SHIPMENT SERVER XML PROGRAMMING INFORMATION
Version 6.0.0
SHIPMENT SERVER XML PROGRAMMING INFORMATION
Version 6.0.0
Copyright © 2007 Agile-Network LLC. All Rights Reserved.
The technical documentation is being delivered to you as-is and Agile-Network LLC makes no warranty as to its accuracy or use. Any use of the technical documentation or the information contained therein is at the risk of the user. Documentation may include technical or other inaccuracies or typographical errors. Agile-Network LLC reserves the right to make changes without prior notice.
Copyright Notice
Any technical documentation that is made available by Agile-Network LLC is the copyrighted work of Agile-Network LLC and is owned by Agile-Network LLC.
No part of this publication may be copied without the express written permission of Agile-Network LLC.
AgileElite Distributed by:
Agile-Network, LLC
Offices Nationwide
1-866-686-2445
Visit our website at:
www.agile-network.com
Contents 3
PIERBRIDGE SHIPMENT SERVER XML INTERFACE ............................ 5 INTERFACE OVERVIEW ..................................................................................................... 5
GENERAL PROGRAMMING INFORMATION ......................................... 8 TRANSACTIONS ............................................................................................................... 8 COMMUNICATION ............................................................................................................. 8 XML............................................................................................................................... 8 XSD............................................................................................................................... 9 DATA TYPES ................................................................................................................... 9
RATE PROGRAMMING INFORMATION .............................................. 11 XML REQUEST ..............................................................................................................11 XML RESPONSE ............................................................................................................23 BASIC PACKAGE .............................................................................................................26 INTERNATIONAL ..............................................................................................................27
RATE SHOP PROGRAMMING INFORMATION .................................... 29 XML REQUEST ..............................................................................................................29 XML RESPONSE ............................................................................................................41 BASIC PACKAGE .............................................................................................................44 INTERNATIONAL ..............................................................................................................46
SHIP PROGRAMMING INFORMATION ............................................... 48 XML REQUEST ..............................................................................................................48 XML RESPONSE ............................................................................................................74 BASIC PACKAGE .............................................................................................................81 INTERNATIONAL ..............................................................................................................83
MULTIPACK PROGRAMMING INFORMATION .................................... 85 XML REQUEST ..............................................................................................................85 XML RESPONSE .......................................................................................................... 103 BASIC PACKAGE ........................................................................................................... 105 INTERNATIONAL ............................................................................................................ 106
CLEAR PACKAGE PROGRAMMING INFORMATION .......................... 108 XML REQUEST ............................................................................................................ 108 XML RESPONSE .......................................................................................................... 109 BASIC PACKAGE ........................................................................................................... 110
VOID PROGRAMMING INFORMATION ............................................ 111 XML REQUEST ............................................................................................................ 111 XML RESPONSE .......................................................................................................... 113 BASIC PACKAGE ........................................................................................................... 114
Contents 4
TRACK PROGRAMMING INFORMATION ......................................... 115 XML REQUEST ............................................................................................................ 115 XML RESPONSE .......................................................................................................... 117 BASIC PACKAGE ........................................................................................................... 120
SERVER CONFIGURATION PROGRAMMING INFORMATION .............. 121 XML REQUEST ............................................................................................................ 121 XML RESPONSE .......................................................................................................... 122 EXAMPLE ..................................................................................................................... 128
PRINT PROGRAMMING INFORMATION ........................................... 133 XML REQUEST ............................................................................................................ 133 XML RESPONSE .......................................................................................................... 136 RE-PRINT A PACKAGE LABEL ........................................................................................ 138 RE-PRINT ALL INTERNATIONAL DOCUMENTATION FOR A SHIPMENT ................................. 139
RETURN PROGRAMMING INFORMATION ....................................... 140 XML REQUEST ............................................................................................................ 140 XML RESPONSE .......................................................................................................... 152 BASIC PACKAGE ........................................................................................................... 155
END OF DAY LIST PROGRAMMING INFORMATION ......................... 157 XML REQUEST ............................................................................................................ 157 XML RESPONSE .......................................................................................................... 158 EXAMPLE ..................................................................................................................... 160
END OF DAY ACTION PROGRAMMING INFORMATION .................... 161 XML REQUEST ............................................................................................................ 161 XML RESPONSE .......................................................................................................... 163 EXAMPLE ..................................................................................................................... 165
APPENDICES .............................................................................. 166 APPENDIX A – REFERENCE TABLES ............................................................................... 166 APPENDIX B – LIMITATIONS BY VERSION ........................................................................ 177
Pierbridge Shipment Server XML Interface 5
PIERBRIDGE SHIPMENT SERVER XML INTERFACE The Pierbridge Shipment Server provides an XML interface that allows third party developers to perform shipping functionality, such as ship, multipack, and void.
The aim of this document is to provide guidelines and examples to enable a third party developer to integrate the Pierbridge Shipment Server into their own solution through the use of this interface.
INTERFACE OVERVIEW
The Pierbridge Shipment Server, through its XML interface, provides the ability to ship items using well-known organizations such as DHL, FedEx, UPS, and USPS.
Most of the standard services offered by these organizations, such as Express and Ground services, insurance, and signature release are offered.
Furthermore, standard, international, and LTL (Less Than Load) shipping are catered for.
A full suite of printed shipping labels and documentation can be produced through the interface. Material such as labels, Commercial Invoices, Certificate of Origins, and Bill of Ladings are automatically generated from the information passed to the interface.
A number of interfaces can be used to perform various shipping operations:
Rate. This is the interface for determining the costs and time to deliver items to a receiver.
It allows you to specify details such as carrier and service required, receiver, and package details such as dimensions and weight. Any special services, e.g. insurance or COD (Collect-On-Delivery) can also be specified.
It returns information about the estimated rates, such as costs and commitment level (i.e. how long the items will take to reach the receiver).
For more information on this interface see section ‘Rate Programming Information’.
Rate Shop. This is the interface for comparing the costs and time to deliver items to a receiver.
It allows you to specify details such as receiver and package details such as dimensions and weight. Any special services, e.g. insurance or COD (Collect-On-Delivery) can also be specified.
It differs from the rate interface in that it returns information about the estimated rates, such as costs and commitment level (i.e. how long the items will take to reach the receiver) for a number of carriers and services, rather than just a single carrier and service.
For more information on this interface see section ‘Rate Shop Programming Information’.
Ship. This is the interface for shipping single packages via domestic, international, or LTL services.
Pierbridge Shipment Server XML Interface 6
It allows you to specify details such as carrier and service required, receiver, and package details such as dimensions and weight. Any special services, e.g. insurance or COD (Collect-On-Delivery) can also be specified.
It returns information about the shipment, such as costs, commitment level (i.e. how long the items will take to reach the receiver), and a tracking number.
It also produces and prints any labels or documents that are required.
For more information on this interface see section ‘Ship Programming Information’.
Multipack. This is the interface for adding packages to the system to prepare for a multipack rate, ship or rate shop via domestic, international, or LTL services.
This interface adds one package to the system each time it is called. When the rate, rate shop or ship is to be performed then the Rate, Rate Shop or Ship interface is called. This rates or ships all the packages added using this interface plus the package submitted to the Rate, Rate Shop or Ship interface.
For more information on this interface see section ‘Multipack Ship Programming Information’.
Clear. This is the interface for clearing packages from the system that have been added erroneously.
It sometimes happens that when a multipack rate or ship is submitted an error will be found on one or more of the packages in the shipment. A single call to this interface clears all packages in the system that have been added, but not shipped, by a particular user.
For more information on this interface see section ‘Clear Package Programming Information’.
Void. Occasionally you may decide that a package that has already been shipped needs to be cancelled. This interface allows you to do this.
For more information on this interface see section ‘Void Programming Information’.
Track. This is the interface for tracking packages that have been shipped.
It returns information about the package, such as past and current geographic locations, and dates and times the package was at that location.
For more information on this interface see section ‘Track Programming Information’.
Server Configuration. This is the interface for finding out the Shipment Server’s current configuration.
It returns information such as a list of supported carriers, their services and packages, label and document types, and rate shop groups.
For more information on this interface see section ‘Server Configuration Programming Information’.
Print. This is the interface for re-printing shipping-related labels and documentation.
Pierbridge Shipment Server XML Interface 7
For more information on this interface see section ‘Print Programming Information’.
Return. This is the interface for generating return shipments, which allow the original receiver of goods to return them to you.
It allows you to specify details such as carrier and service required, the returner, and package details such as dimensions and weight. Any special services, e.g. insurance, can also be specified.
It returns information about the shipment, such as a tracking number.
It also produces and prints any labels that are required.
Return service is only available for Airborne and ConnectShip (UPS) carriers.
For more information on this interface see section ‘Return Programming Information’.
End Of Day List Manifests. This is the interface for listing the currently open manifests.
It allows you to specify the carrier you want to list open manifests for.
It returns a list of manifests for the specified carrier that can be actioned (using the End Of Day Action interface).
End Of Day is only applicable to on-site shipping systems such as ConnectShip, FSMS and ProShip.
For more information on this interface see section ‘End Of Day List Programming Information’.
End Of Day Action. This is the interface for actioning a currently open manifest.
It allows you to specify the carrier, ship date and identifier of the manifest that you want to action. This information is typically gathered by using the End Of Day List Manifests interface.
It returns whether the actioning has succeeded and (dependent on Shipment Server configuation) any manifest documentation that was produced.
End Of Day is only applicable to on-site shipping systems such as ConnectShip, FSMS and ProShip.
For more information on this interface see section ‘End Of Day Action Programming Information’.
General Programming Information 8
GENERAL PROGRAMMING INFORMATION In this section we provide general information on how to how to integrate the Pierbridge Shipment Server XML interface into your application.
To integrate the Pierbridge Shipment Server XML interface into your applications, you must develop bespoke code that adapts your application’s logic and data to that required by the interface.
You can use any programming language that supports HTTP communication and XML.
TRANSACTIONS
The interfaces are transactional in that each request made to any interface stimulates a matching response.
If needed, the request XML allows you to supply a transaction identifier, which is any value that can be inserted into an XML element. This identifier can be used to match requests with their responses.
COMMUNICATION
All interactions with the interfaces are through the HTTP POST method. The HTTP message content is formatted as an XML document.
The HTTP connection should be made to the following URL:
http://localhost/Shipment Services/XmlService.aspx
This assumes that the XML will be POSTed on the same machine as the HTTP server. If this is not the case, ‘localhost’ must be changed to the HTTP server machine’s name or IP address.
The content type for the connection should be: application/x-www-form-urlencoded
The XML request should be URL-encoded and POSTed without any form variable.
XML
The interfaces expect information to be passed to and from them in an XML format.
It is not our intention to provide a primer on XML here. It is assumed the reader has the required knowledge.
Information on XML can be found at:
http://www.w3.org/XML
General Programming Information 9
XSD
The format of the XML that the interfaces expect is in this document and in the XSD files that accompany this document.
It is not our intention to provide a primer on XSD here. It is assumed the reader has the required knowledge.
Information on XSD can be found at:
http://www.w3.org/XML/Schema
It should be noted that not every element in the accompanying XSDs are detailed in the following sections. These non-documented elements are used to integrate the interfaces into other Agile products and should not be used by a third party.
The elements in the XSDs have a number of bespoke attributes that are used in Agile’s own products. Their purpose is to provide a user-friendly interface to the XSD’s contents.
Attribute Description
pb:displayname A textual description of the element.
pb:tooltip Extra informative text that is displayed in a tooltip bubble if the user’s mouse hovers over an element.
pb:group Groups enable the user to view only those elements that are somehow related.
For example, an international group contains all the elements that are needed when doing international rating or shipping.
Each element can belong to zero or more groups.
DATA TYPES
Each element specified in this document and the accompanying XSDs expect a certain type of data. We describe these below.
Data Type Description
Boolean Used to represent logical true and false.
The acceptable values for such a field are ‘True’ or ‘False’.
Container This type of element has no data associated with it; it simply acts as a parent element for zero or more child elements.
So, no values should be entered into this type of element.
General Programming Information 10
Date Used to represent date data. The ISO format yyyy-mm-dd should be used.
The acceptable values for such a field are e.g. ‘2007-12-31’.
Float Used to represent numeric data that has a decimal point. These are typically used for monetary and dimensional values.
The acceptable values for such a field are e.g. ‘2.7’ or ‘10’.
Integer Used to represent numeric data that has no decimal point. These are typically used to identify e.g. carriers or service types.
The acceptable values for such a field are e.g. ‘1’ or ‘102’.
String Used to represent alphanumeric data or any kind. These are typically used for e.g. address information or descriptions.
The acceptable values for such a field are e.g. ‘The White House’ or ‘202-456-1414’.
Time Used to represent time data. The format hh:mm or hh:mm:ss should be used. The second part maybe omitted. A 24-hour clock is assumed.
The acceptable values for such a field are e.g. ‘10:21:05’ or ‘23:04’.
DateTime Used to represent a combined date and time data. The format is a combination of the Date and Time formats described above. So, the ISO format should be used for the date and hh:mm or hh:mm:ss for time. The date and time should be separated by a single space character.
The time part can be ommited.
The acceptable values for such a field are e.g. ‘2007-12-31 10:21:05’ or ‘2007-12-31’.
Rate Programming Information 11
RATE PROGRAMMING INFORMATION This interface allows you to rate items.
In the XML request you specify information such as the carrier (e.g. FedEx, UPS) you want to rate for, the receiver, item details such as weight and dimensions, and any special services required (e.g. collect-on-delivery or insurance).
The XML response will indicate whether your request has succeeded. If it hasn’t then an indication of what went wrong will be provided. If it was successful then information such as shipping charges and time to deliver will be returned.
XML REQUEST
The request XML document must adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeRateRequest Yes
One
Container Root element.
PierbridgeRateRequest/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeRateRequest/
Live
No
Zero or One
Boolean Indicates whether the rate is a test or not.
Omit the element if the rate is a test one, else set to ‘True’.
PierbridgeRateRequest/
CloseShipment
No
Zero or One
Boolean Indicates whether this rate is to instigate a multipack rate.
Omit the element if a multipack rate is not required, else set to ‘True’.
See section ‘Mulitpack Programming Information’ for details on multipack rate and ship.
PierbridgeRateRequest/
Carrier
Yes
One
Integer The numeric identifier of the carrier (e.g. FedEx, UPS) who is to be rated for.
See Appendix A for valid values.
PierbridgeRateRequest/
ServiceType
Yes
One
Integer The numeric identifier of the carrier service (e.g. Next Day, Ground, Express) that is to be rated for.
See Appendix A for valid values.
Rate Programming Information 12
PierbridgeRateRequest/
ShipDate
Yes
One
Date The date that the items are intended to be shipped.
Defaults to current date if left blank.
PierbridgeRateRequest/
RequiredDate
No
Zero or One
DateTime The date/time that the items are required to arrive at the receiver.
PierbridgeRateRequest/
SaturdayDelivery
No
Zero or One
Boolean Indicates whether the shipment is to be delivered on a Saturday.
Omit the element if a Saturday delivery is not required, else set to ‘True’.
Most carriers levy an extra charge for this
option.
PierbridgeRateRequest/
Location
No
Zero or One
Integer Overrides the sender's default location to allow rating from any location.
Must be a value from the Locations.[ID] column in the Pierbridge Shipment Server database.
PierbridgeRateRequest/
AccountID
No
Zero or One
Integer Overrides the sender's account to allow rating using any account.
Must be a value from the Accounts.[ID] column in the Pierbridge Shipment Server database.
PierbridgeRateRequest/
Receiver
Yes
One
Container Parent element for Receiver address elements.
PierbridgeRateRequest/
Receiver/
CompanyName
No
Zero or One
String The name of the company the shipment is to be shipped to.
PierbridgeRateRequest/
Receiver/
Street
No
Zero or One
String The first line of the address the shipment is to be shipped to.
PierbridgeRateRequest/
Receiver/
Locale
No
Zero or One
String The second line of the address the shipment is to be shipped to.
PierbridgeRateRequest/
Receiver/
Other
No
Zero or One
String The third line of the address the shipment is to be shipped to.
PierbridgeRateRequest/
Receiver/
City
Yes
One
String The city the shipment is to be shipped to.
Rate Programming Information 13
PierbridgeRateRequest/
Receiver/
Region
Yes
One
String The region the shipment is to be shipped to.
If in the US, the two-letter state code should be used, e.g. ‘MA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘Massachusetts’ or ‘Mass.’ into the required code.
PierbridgeRateRequest/
Receiver/
PostalCode
Yes
One
String The postal or zip code the shipment is to be shipped to.
PierbridgeRateRequest/
Receiver/
Country
Yes
One
String The country the shipment is to be shipped to.
The standard two-letter country codes should be used, e.g. ‘US’ or ‘CA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘USA’ or ‘United States’ into the required code.
PierbridgeRateRequest/
Receiver/
Residential
No
Zero or One
Boolean Indicates whether the address to be shipped to is a residential one.
Omit the element if it is not a residential address, else set to ‘True’.
PierbridgeRateRequest/
International
No
Zero or One
Container Parent element for shipment-level international shipping elements.
PierbridgeRateRequest/
International/
AESTransactionNumber
No
Zero or One
String The transaction number associated with the filing of a Shipper’s Export Declaration for the shipment.
PierbridgeRateRequest/
Packages
Yes
One
Container Parent element for packages elements.
PierbridgeRateRequest/
Packages/
Package
Yes
One
Container Parent element for a package element.
PierbridgeRateRequest/
Packages/
Package/
Copies
No
Zero or One
Integer Indicates the number of additional copies of the package that are to be shipped.
Defaults to zero additional copies if omitted.
Rate Programming Information 14
PierbridgeRateRequest/
Packages/
Package/
ReceiverName
No
Zero or One
String The name of the person the package is to be shipped to.
This element is provided at this level, rather than the shipment-level, as packages may require the attention of different people at the same address.
PierbridgeRateRequest/
Packages/
Package/
ReceiverPhone
No
Zero or One
String The telephone number of the person the package is to be shipped to.
This element is provided at this level, rather than the shipment-level, as packages may require the attention of different people at the same address.
PierbridgeRateRequest/
Packages/
Package/
PackageType
Yes
One
Integer The numeric identifier for the type of package the items to be shipped are contained in.
See Appendix A for valid values.
PierbridgeRateRequest/
Packages/
Package/
Weight
Yes
One
Float The weight of the package.
The units (e.g. pound or kilogram) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateRequest/
Packages/
Package/
Length
No
Zero or One
Integer The length of the package.
The units (e.g. inch or centimeter) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateRequest/
Packages/
Package/
Width
No
Zero or One
Integer The width of the package.
The units (e.g. inch or centimeter) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateRequest/
Packages/
Package/
Height
No
Zero or One
Integer The height of the package.
The units (e.g. inch or centimeter) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateRequest/
Packages/
Package/
ContentDescription
No
Zero or One
String Description of the package's contents.
Rate Programming Information 15
PierbridgeRateRequest/
Packages/
Package/
Insurance
No
Zero or One
Container Parent element for information about Insurance.
If insurance is not required for this package, then omit this element and its children.
PierbridgeRateRequest/
Packages/
Package/
Insurance/
Type
No
Zero or One
Integer This value should be set to ‘1’ if insurance is required.
PierbridgeRateRequest/
Packages/
Package/
Insurance/
Value
No
Zero or One
Float The value the package is to be insured
for.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateRequest/
Packages/
Package/
COD
No
Zero or One
Container Parent element for information about Collect On Delivery (COD).
If COD is not required for this package, then omit this element and its children.
PierbridgeRateRequest/
Packages/
Package/
COD/
Type
No
Zero or One
Integer The numeric identifier for the type of Collect On Delivery.
See Appendix A for valid values.
PierbridgeRateRequest/
Packages/
Package/
COD/
Value
No
Zero or One
Float The value that is to be collected by the carrier when this package is delivered.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateRequest/
Packages/
Package/
Hold
No
Zero or One
Boolean Indicates whether the package should be held for collection at a carrier’s depot or some other location.
Omit this element if the package is not to be held, else set to ‘True’.
Rate Programming Information 16
PierbridgeRateRequest/
Packages/
Package/
Holder
No
Zero or One
Container Parent element for information about the individual or organization who is to hold the package for collection.
If holder information is not required for this package, then omit this element and its children.
PierbridgeRateRequest/
Packages/
Package/
Holder/
Name
No
Zero or One
String The name of the individual who is to hold the package for collection.
PierbridgeRateRequest/
Packages/
Package/
Holder/
CompanyName
No
Zero or One
String The name of the company where the package is to be held for collection.
PierbridgeRateRequest/
Packages/
Package/
Holder/
Street
No
Zero or One
String The first line of the address where the package is to be held for collection.
PierbridgeRateRequest/
Packages/
Package/
Holder/
Locale
No
Zero or One
String The second line of the address where the package is to be held for collection.
PierbridgeRateRequest/
Packages/
Package/
Holder/
Other
No
Zero or One
String The third line of the address where the package is to be held for collection.
PierbridgeRateRequest/
Packages/
Package/
Holder/
City
No
Zero or One
String The city where the package is to be held for collection.
Rate Programming Information 17
PierbridgeRateRequest/
Packages/
Package/
Holder/
Region
No
Zero or One
String The region where the package is to be held for collection
If in the US, the two-letter state code should be used, e.g. ‘MA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘Massachusetts’ or ‘Mass.’ into the required code.
PierbridgeRateRequest/
Packages/
Package/
Holder/
PostalCode
No
Zero or One
String The postal or zip code where the package is to be held for collection.
PierbridgeRateRequest/
Packages/
Package/
Holder/
Country
No
Zero or One
String The country where the package is to be held for collection.
The standard two-letter country codes should be used, e.g. ‘US’ or ‘CA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘USA’ or ‘United States’ into the required code.
PierbridgeRateRequest/
Packages/
Package/
Holder/
Phone
No
Zero or One
String The phone number of the individual who is to hold the package for collection.
PierbridgeRateRequest/
Packages/
Package/
AdditionalHandling
No
Zero of One
Boolean Indicates that extra handling measures are required when loading the package.
Omit this element if the package does not require additional handling, else set to ‘True’.
PierbridgeRateRequest/
Packages/
Package/
Oversize
No
Zero of One
Integer The numeric identifier for the package’s oversize status.
Omit this element if the package is not oversize.
See Appendix A for valid values.
PierbridgeRateRequest/
Packages/
Package/
LargePackage
No
Zero of One
Boolean Indicates that this package has UPS ‘Large Package’ dimensions.
Omit this element if the package does not have UPS ‘Large Package’ dimensions, else set to ‘True’.
Rate Programming Information 18
PierbridgeRateRequest/
Packages/
Package/
DeliveryConfirmation
No
Zero of One
Integer The numeric identifier for the type of delivery confirmation required for this package.
Omit this element if the delivery confirmation is not required.
See Appendix A for valid values.
PierbridgeRateRequest/
Packages/
Package/
FreightClass
No
Zero of One
String The freight class of the package.
Used when LTL rating.
PierbridgeRateRequest/
Packages/
Package/
NMFC
No
Zero of One
String The National Motor Freight Classification of the package.
Used when LTL rating.
PierbridgeRateRequest/
Packages/
Package/
InsidePickup
No
Zero of One
Boolean Indicates that the package is to be picked up inside.
Omit this element if inside pickup is not required, else set to ‘True’.
PierbridgeRateRequest/
Packages/
Package/
InsideDelivery
No
Zero of One
Boolean Indicates that the package is to be delivered inside.
Omit this element if inside delivery is not required, else set to ‘True’.
PierbridgeRateRequest/
Packages/
Package/
NonStandardContainer
No
Zero of One
Boolean Indicates that the package is a non-standard container.
Omit this element if the package is in a standard container, else set to ‘True’.
PierbridgeRateRequest/
Packages/
Package/
International
No
Zero or One
Container Parent element for information about the international aspects of the package.
If international rating is not being performed then this element can be
omitted.
PierbridgeRateRequest/
Packages/
Package/
International/
DocumentsOnly
No
Zero or One
Boolean Indicates whether the package contains only documents.
Omit this element if the package contains items other than documents.
If this element has a value of ‘True’ then the following Contents element is not required.
Rate Programming Information 19
PierbridgeRateRequest/
Packages/
Package/
International/
Contents
No
Zero or One
Container Parent element for information about the package’s contents.
If the package contains only documents then this element and its children can be omitted.
PierbridgeRateRequest/
Packages/
Package/
International/
Contents/
Content
No
Zero or Many
Container Parent element for information about each Content item.
Include one of these elements for each Content item.
PierbridgeRateRequest/
Packages/
Package/
International/
Contents/
Content/
Code
No
Zero or One
String The Harmonized, or Schedule-B, code for the item.
PierbridgeRateRequest/
Packages/
Package/
International/
Contents/
Content/
Quantity
No
Zero or One
Integer The number of items of this content type that are in this package.
PierbridgeRateRequest/
Packages/
Package/
International/
Contents/
Content/
OrderedQuantity
No
Zero or One
Integer The number of items of this content type that were ordered.
Rate Programming Information 20
PierbridgeRateRequest/
Packages/
Package/
International/
Contents/
Content/
BackOrderedQuantity
No
Zero or One
Integer The number of items of this content type that are on back order.
PierbridgeRateRequest/
Packages/
Package/
International/
Contents/
Content/
Value
No
Zero or One
Float The value of a single item.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateRequest/
Packages/
Package/
International/
Contents/
Content/
Weight
No
Zero or One
Float The weight of a single item.
The units (e.g. pound or kilogram) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateRequest/
Packages/
Package/
International/
Contents/
Content/
Description
No
Zero or One
String A description of the item.
PierbridgeRateRequest/
Packages/
Package/
International/
Contents/
Content/
OriginCountry
No
Zero or One
String The country the item originated from.
Rate Programming Information 21
PierbridgeRateRequest/
Packages/
Package/
International/
Contents/
Content/
PurchaseOrderNumber
No
Zero or One
String The purchase order number associated with the item.
PierbridgeRateRequest/
Packages/
Package/
International/
Contents/
Content/
SalesOrderNumber
No
Zero or One
String The sales order number associated with the item.
PierbridgeRateRequest/
Packages/
Package/
International/
Contents/
Content/
ItemCode
No
Zero or One
String Any other code associated with the item.
PierbridgeRateRequest/
Packages/
Package/
International/
Contents/
Content/
ItemDescription
No
Zero or One
String Any other description for the item.
PierbridgeRateRequest/
Packages/
Package/
International/
Contents/
Content/
CustomerCode
No
Zero or One
String The customer’s code for the item.
Rate Programming Information 22
PierbridgeRateRequest/
Packages/
Package/
International/
Contents/
Content/
PartNumber
No
Zero or One
String The part number of the item.
PierbridgeRateRequest/
Packages/
Package/
International/
Contents/
Content/
BinNumber
No
Zero or One
String The bin number of the item.
PierbridgeRateRequest/
Packages/
Package/
International/
Contents/
Content/
LotNumber
No
Zero or One
String The lot number of the item.
PierbridgeRateRequest/
Packages/
Package/
International/
Contents/
Content/
SerialNumber
No
Zero or One
String The serial number of the item.
PierbridgeRateRequest/
UserName
Yes
One
String The Windows username of the user who is submitting the request.
Rate Programming Information 23
XML RESPONSE
After the above XML request has been POSTed on the HTTP connection an XML response will be returned, which will adhere to the following structure.
Note that charges are returned at shipment- and package-levels. For a shipment that contains one package these will be the same. For a multipack shipment the shipment-level charges will be the sum over all package charges.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeRateResponse Yes
One
Container Root element.
PierbridgeRateResponse/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeRateResponse/
ShippingCharge
Yes
One
Float The estimated cost for shipping the shipment.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateResponse/
AccessorialCharge
Yes
One
Float The estimated cost for any requested extra services, e.g. insurance, COD.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateResponse/
OtherCharge
Yes
One
Float Any other costs for shipping the shipment.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateResponse/
TotalCharge
Yes
One
Float The total cost for shipping the shipment.
This is the sum of shipping, accessorial, and other costs.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateResponse/
CommitmentLevel
Yes
One
String An indication of how long it will take for
the package to get to the receiver.
Rate Programming Information 24
PierbridgeRateResponse/
DeliveryIn
Yes
One
Integer The number of days the shipment will take to get to the receiver.
May be empty if the carrier does not provide this information.
PierbridgeRateResponse/
Packages
Yes
One
Container Parent element for packages elements.
PierbridgeRateResponse/
Packages/
Package
Yes
One
Container Parent element for a package element.
PierbridgeRateResponse/
Packages/
Package/
Status
Yes
One
Container Parent element for package status elements.
PierbridgeRateResponse/
Packages/
Package/
Status/
Code
Yes
One
Integer Indicates whether the package has been successfully rated.
A value of ‘0’ indicates failure and ‘1’ indicates success.
PierbridgeRateResponse/
Packages/
Package/
Status/
Description
Yes
One
String A textual description of the package’s success.
If the package has failed, then the value will summarise why it failed.
PierbridgeShipResponse/
Packages/
Package/
ShippingCharge
Yes
One
Float The estimated cost for shipping the package.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipResponse/
Packages/
Package/
AccessorialCharge
Yes
One
Float The estimated cost for any requested extra services, e.g. insurance, COD.
The units (e.g. USD or CAD) are
determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipResponse/
Packages/
Package/
OtherCharge
Yes
One
Float Any other costs for shipping the package.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
Rate Programming Information 25
PierbridgeShipResponse/
Packages/
Package/
TotalCharge
Yes
One
Float The total cost for shipping the package.
This is the sum of shipping, accessorial, and other costs.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
Rate Programming Information 26
BASIC PACKAGE
The following XML rates a package. This represents the minimum information that is typically provided for package rating.
A UPS 2nd Day Air service has been specified in this example.
XML Request
<?xml version="1.0" encoding="UTF-8"?>
<PierbridgeRateRequest>
<Carrier>3</Carrier>
<ServiceType>24</ServiceType>
<ShipDate></ShipDate>
<Receiver>
<City>Washington</City>
<Region>DC</Region>
<PostalCode>20500</PostalCode>
<Country>US</Country>
</Receiver>
<Packages>
<Package>
<PackageType>11</PackageType>
<Weight>8.5</Weight>
</Package>
</Packages>
<UserName>user</UserName>
</PierbridgeRateRequest>
XML Response
<?xml version="1.0" encoding="utf-8"?>
<PierbridgeRateResponse>
<ShippingCharge>10.33</ShippingCharge>
<AccessorialCharge>0</AccessorialCharge>
<OtherCharge>0</OtherCharge>
<TotalCharge>10.33</TotalCharge>
<CommitmentLevel>Est. delivery in 2 business day(s)</CommitmentLevel>
<DeliveryIn>2</DeliveryIn>
<Packages>
<Package>
<Status>
<Code>1</Code>
<Description>Success</Description>
</Status>
<ShippingCharge>10.33</ShippingCharge>
<AccessorialCharge>0.00</AccessorialCharge>
<OtherCharge>0.00</OtherCharge>
<TotalCharge>10.33</TotalCharge>
</Package>
</Packages>
<Carrier>3</Carrier>
<CarrierName>UPS</CarrierName>
<ServiceType>24</ServiceType>
<ServiceTypeName>UPS 2nd Day Air®</ServiceTypeName>
<Weight>8.5</Weight>
</PierbridgeRateResponse>
Rate Programming Information 27
INTERNATIONAL
The following Xml rates an international package, which contains two different types of content.
A FedEx International Priority carrier service has been specified in this example.
XML Request
<?xml version="1.0" encoding="UTF-8"?>
<PierbridgeRateRequest>
<Carrier>2</Carrier>
<ServiceType>12</ServiceType>
<ShipDate></ShipDate>
<Receiver>
<CompanyName>Public Works and Government Services Canada</CompanyName>
<Street>Main Street</Street>
<City>Ottawa</City>
<Region>ON</Region>
<PostalCode>K1A 0S5</PostalCode>
<Country>CA</Country>
</Receiver>
<Packages>
<Package>
<ReceiverName>Mr Minister</ReceiverName>
<ReceiverPhone>1-800-622-6232</ReceiverPhone>
<PackageType>9</PackageType>
<Weight>8.5</Weight>
<Length>9</Length>
<Width>9</Width>
<Height>9</Height>
<International>
<Contents>
<Content>
<Code>090122</Code>
<Quantity>2</Quantity>
<Value>200</Value>
<Weight>20</Weight>
<Description>shoes</Description>
<OriginCountry>MX</OriginCountry>
</Content>
<Content>
<Code>490199</Code>
<Quantity>100</Quantity>
<Value>26</Value>
<Weight>5</Weight>
<Description>books</Description>
<OriginCountry>US</OriginCountry>
</Content>
</Contents>
</International>
</Package>
</Packages>
<UserName>user</UserName>
</PierbridgeRateRequest>
XML Response
<?xml version="1.0" encoding="utf-8"?>
<PierbridgeRateResponse>
<ShippingCharge>66.72</ShippingCharge>
<AccessorialCharge>13.34</AccessorialCharge>
<OtherCharge>0</OtherCharge>
<TotalCharge>80.06</TotalCharge>
<CommitmentLevel>Not Provided</CommitmentLevel>
Rate Programming Information 28
<DeliveryIn></DeliveryIn>
<Packages>
<Package>
<Status>
<Code>1</Code>
<Description>Success</Description>
</Status>
</Package>
</Packages>
<Carrier>2</Carrier>
<CarrierName>FedEx</CarrierName>
<ServiceType>12</ServiceType>
<ServiceTypeName>FedEx International Priority®</ServiceTypeName>
<Weight>8.5</Weight>
</PierbridgeRateResponse>
Rate Shop Programming Information 29
RATE SHOP PROGRAMMING INFORMATION This interface allows you to rate shop items.
In the XML request you specify information such as the rate group want to rate for, the receiver, item details such as weight and dimesions, and any special services required (e.g. collect-on-delivery or insurance).
The XML response will indicate whether your request has succeeded. If it hasn’t then an indication of what went wrong will be provided. If it was successful then a list of containing information such as shipping charges and time to deliver will be returned.
Rate groups are configured on the server. They allow you to group one or more carrier services. For example, you may decide to create a rate group of the ground services offered by DHL, FedEx, and UPS. A rate shop using this group will return shipping charges and time to deliver for each of these carrier services. This information allows you to compare the services and therefore decide which to use to ship the items.
XML REQUEST
The request XML document must adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeRateShopRequest Yes
One
Container Root element.
PierbridgeRateShopRequest/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeRateShopRequest/
Live
No
Zero or One
Boolean Indicates whether the rate shop is a test
or not.
Omit the element if the rate shop is a test one, else set to ‘True’.
PierbridgeRateShopRequest/
CloseShipment
No
Zero or One
Boolean Indicates whether this rate shop is to instigate a multipack rate shop.
Omit the element if a multipack rate shop is not required, else set to ‘True’.
See section ‘Mulitpack Programming Information’ for details on multipack rate and ship.
PierbridgeRateShopRequest/
RateGroup
Yes
One
Integer The numeric identifier of the rate group.
See section ‘Server Configuration
Programming Information’ for details on how to obtain valid values.
Rate Shop Programming Information 30
PierbridgeRateShopRequest/
ShipDate
Yes
One
Date The date that the items are to be shipped.
Defaults to current date if left blank.
PierbridgeRateShopRequest/
RequiredDate
No
Zero or One
DateTime The date/time the items are to be delivered.
PierbridgeRateShopRequest/
SaturdayDelivery
No
Zero or One
Boolean Indicates whether the shipment is to be delivered on a Saturday.
Omit the element if a Saturday delivery is not required, else set to ‘True’.
Most carriers levy an extra charge for this
option.
PierbridgeRateShopRequest/
Location
No
Zero or One
Integer Overrides the sender's location to allow rating from any location.
Must be a value from the Locations.[ID] column in the Pierbridge Shipment Server database.
PierbridgeRateShopRequest/
FilterMode
No
Zero or One
Integer The numeric identifier that determines what filtering is applied to the returned rates.
See Appendix A for valid values.
PierbridgeRateShopRequest/
Receiver
Yes
One
Container Parent element for Receiver address elements.
PierbridgeRateShopRequest/
Receiver/
CompanyName
No
Zero or One
String The name of the company the shipment is to be shipped to.
PierbridgeRateShopRequest/
Receiver/
Street
No
Zero or One
String The first line of the address the shipment is to be shipped to.
PierbridgeRateShopRequest/
Receiver/
Locale
No
Zero or One
String The second line of the address the shipment is to be shipped to.
PierbridgeRateShopRequest/
Receiver/
Other
No
Zero or One
String The third line of the address the shipment is to be shipped to.
PierbridgeRateShopRequest/
Receiver/
City
Yes
One
String The city the shipment is to be shipped to.
Rate Shop Programming Information 31
PierbridgeRateShopRequest/
Receiver/
Region
Yes
One
String The region the shipment is to be shipped to.
If in the US, the two-letter state code should be used, e.g. ‘MA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘Massachusetts’ or ‘Mass.’ into the required code.
PierbridgeRateShopRequest/
Receiver/
PostalCode
Yes
One
String The postal or zip code the shipment is to be shipped to.
PierbridgeRateShopRequest/
Receiver/
Country
Yes
One
String The country the shipment is to be shipped to.
The standard two-letter country codes should be used, e.g. ‘US’ or ‘CA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘USA’ or ‘United States’ into the required code.
PierbridgeRateShopRequest/
Receiver/
Residential
No
Zero or One
Boolean Indicates whether the address to be shipped to is a residential one.
Omit the element if it is not a residential address, else set to ‘True’.
PierbridgeRateShopRequest/
Packages
Yes
One
Container Parent element for packages elements.
PierbridgeRateShopRequest/
Packages/
Package
Yes
One
Container Parent element for a package element.
PierbridgeRateShopRequest/
Packages/
Package/
Copies
No
Zero or One
Integer Indicates the number of additional copies of the package that are to be shipped.
Defaults to zero additional copies if omitted.
PierbridgeRateShopRequest/
Packages/
Package/
ReceiverName
No
Zero or One
String The name of the person the package is to be shipped to.
This element is provided at this level, rather than the shipment-level, as packages may require the attention of different people at the same address.
PierbridgeRateShopRequest/
Packages/
Package/
ReceiverPhone
No
Zero or One
String The telephone number of the person the package is to be shipped to.
This element is provided at this level, rather than the shipment-level, as packages may require the attention of different people at the same address.
Rate Shop Programming Information 32
PierbridgeRateShopRequest/
Packages/
Package/
Weight
Yes
One
Float The weight of the package.
The units (e.g. pound or kilogram) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateShopRequest/
Packages/
Package/
Length
No
Zero or One
Integer The length of the package.
The units (e.g. inch or centimeter) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateShopRequest/
Packages/
Package/
Width
No
Zero or One
Integer The width of the package.
The units (e.g. inch or centimeter) are
determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateShopRequest/
Packages/
Package/
Height
No
Zero or One
Integer The height of the package.
The units (e.g. inch or centimeter) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateShopRequest/
Packages/
Package/
Insurance
No
Zero or One
Container Parent element for information about Insurance.
If insurance is not required for this package, then omit this element and its children.
PierbridgeRateShopRequest/
Packages/
Package/
Insurance/
Type
No
Zero or One
Integer This value should be set to ‘1’ if insurance is required.
PierbridgeRateShopRequest/
Packages/
Package/
Insurance/
Value
No
Zero or One
Float The value the package is to be insured for.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateShopRequest/
Packages/
Package/
COD
No
Zero or One
Container Parent element for information about Collect On Delivery (COD).
If COD is not required for this package, then omit this element and its children.
Rate Shop Programming Information 33
PierbridgeRateShopRequest/
Packages/
Package/
COD/
Type
No
Zero or One
Integer The numeric identifier for the type of Collect On Delivery.
See Appendix A for valid values.
PierbridgeRateShopRequest/
Packages/
Package/
COD/
Value
No
Zero or One
Float The value that is to be collected by the carrier when this package is delivered.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateShopRequest/
Packages/
Package/
Hold
No
Zero or One
Boolean Indicates whether the package should be held for collection at a carrier’s depot or some other location.
Omit this element if the package is not to be held, else set to ‘True’.
PierbridgeRateShopRequest/
Packages/
Package/
Holder
No
Zero or One
Container Parent element for information about the individual or organization who is to hold the package for collection.
If holder information is not required for this package, then omit this element and its children.
PierbridgeRateShopRequest/
Packages/
Package/
Holder/
Name
No
Zero or One
String The name of the individual who is to hold
the package for collection.
PierbridgeRateShopRequest/
Packages/
Package/
Holder/
CompanyName
No
Zero or One
String The name of the company where the package is to be held for collection.
PierbridgeRateShopRequest/
Packages/
Package/
Holder/
Street
No
Zero or One
String The first line of the address where the package is to be held for collection.
Rate Shop Programming Information 34
PierbridgeRateShopRequest/
Packages/
Package/
Holder/
Locale
No
Zero or One
String The second line of the address where the package is to be held for collection.
PierbridgeRateShopRequest/
Packages/
Package/
Holder/
Other
No
Zero or One
String The third line of the address where the package is to be held for collection.
PierbridgeRateShopRequest/
Packages/
Package/
Holder/
City
No
Zero or One
String The city where the package is to be held for collection.
PierbridgeRateShopRequest/
Packages/
Package/
Holder/
Region
No
Zero or One
String The region where the package is to be held for collection
If in the US, the two-letter state code should be used, e.g. ‘MA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘Massachusetts’ or ‘Mass.’ into the required code.
PierbridgeRateShopRequest/
Packages/
Package/
Holder/
PostalCode
No
Zero or One
String The postal or zip code where the package is to be held for collection.
PierbridgeRateShopRequest/
Packages/
Package/
Holder/
Country
No
Zero or One
String The country where the package is to be held for collection
The standard two-letter country codes should be used, e.g. ‘US’ or ‘CA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘USA’ or ‘United States’ into the required code.
Rate Shop Programming Information 35
PierbridgeRateShopRequest/
Packages/
Package/
Holder/
Phone
No
Zero or One
String The phone number of the individual who is to hold the package for collection.
PierbridgeRateShopRequest/
Packages/
Package/
AdditionalHandling
No
Zero of One
Boolean Indicates that extra handling measures are required when loading the package.
Omit this element if the package does not require additional handling, else set to ‘True’.
PierbridgeRateShopRequest/
Packages/
Package/
Oversize
No
Zero of One
Integer The numeric identifier for the package’s
oversize status.
Omit this element if the package is not oversize.
See Appendix A for valid values.
PierbridgeRateShopRequest/
Packages/
Package/
LargePackage
No
Zero of One
Boolean Indicates that this package has UPS ‘Large Package’ dimensions.
Omit this element if the package does not have UPS ‘Large Package’ dimensions, else set to ‘True’.
PierbridgeRateShopRequest/
Packages/
Package/
DeliveryConfirmation
No
Zero of One
Integer The numeric identifier for the type of delivery confirmation required for this package.
Omit this element if delivery confirmation is not required.
See Appendix A for valid values.
PierbridgeRateShopRequest/
Packages/
Package/
FreightClass
No
Zero of One
String The freight class of the package.
Used when LTL shipping.
PierbridgeRateShopRequest/
Packages/
Package/
NMFC
No
Zero of One
String The National Motor Freight Classification of the package.
Used when LTL shipping.
PierbridgeRateShopRequest/
Packages/
Package/
ItemsOnPallet
No
Zero of One
Integer The number of items on a pallet.
Used when LTL shipping, where the Package can be treated as a pallet.
Rate Shop Programming Information 36
PierbridgeRateShopRequest/
Packages/
Package/
InsidePickup
No
Zero of One
Boolean Indicates that the package is to be picked up inside.
Omit this element if inside pickup is not required, else set to ‘True’.
PierbridgeRateShopRequest/
Packages/
Package/
InsideDelivery
No
Zero of One
Boolean Indicates that the package is to be delivered inside.
Omit this element if inside delivery is not required, else set to ‘True’.
PierbridgeRateShopRequest/
Packages/
Package/
NonStandardContainer
No
Zero of One
Boolean Indicates that the package is a non-standard container.
Omit this element if the package is in a standard container, else set to ‘True’.
PierbridgeRateShopRequest/
Packages/
Package/
International
No
Zero or One
Container Parent element for information about the international aspects of the package.
If international shipping is not being performed then this element can be omitted.
PierbridgeRateShopRequest/
Packages/
Package/
International/
DocumentsOnly
No
Zero or One
Boolean Indicates whether the package contains only documents.
Omit this element if the package contains items other than documents.
If this element has a value of ‘True’ then the following Contents element is not required.
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents
No
Zero or One
Container Parent element for information about the package’s contents.
If the package contains only documents then this element and its children can be omitted.
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents/
Content
No
Zero or Many
Container Parent element for information about each Content item.
Include one of these elements for each Content item.
Rate Shop Programming Information 37
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents/
Content/
Code
No
Zero or One
String The Harmonized, or Schedule-B, code for the item.
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents/
Content/
Quantity
No
Zero or One
Integer The number of items of this content type that are in this package.
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents/
Content/
OrderedQuantity
No
Zero or One
Integer The number of items of this content type that were ordered.
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents/
Content/
BackOrderedQuantity
No
Zero or One
Integer The number of items of this content type that are on back order.
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents/
Content/
Value
No
Zero or One
Float The value of a single item.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
Rate Shop Programming Information 38
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents/
Content/
Weight
No
Zero or One
Float The weight of a single item.
The units (e.g. pound or kilogram) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents/
Content/
Description
No
Zero or One
String The description of the item.
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents/
Content/
OriginCountry
No
Zero or One
String The country the item originated from.
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents/
Content/
PurchaseOrderNumber
No
Zero or One
String Receiver’s purchase order number.
Printed on shipping documentation.
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents/
Content/
SalesOrderNumber
No
Zero or One
String Your sales order number.
Printed on shipping documentation.
Rate Shop Programming Information 39
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents/
Content/
ItemCode
No
Zero or One
String Any other code associated with the item.
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents/
Content/
ItemDescription
No
Zero or One
String Any other description for the item.
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents/
Content/
CustomerCode
No
Zero or One
String The customer’s code for the item.
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents/
Content/
PartNumber
No
Zero or One
String The part number of the item.
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents/
Content/
BinNumber
No
Zero or One
String The bin number of the item.
Rate Shop Programming Information 40
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents/
Content/
LotNumber
No
Zero or One
String The lot number of the item.
PierbridgeRateShopRequest/
Packages/
Package/
International/
Contents/
Content/
SerialNumber
No
Zero or One
String The serial number of the item.
PierbridgeRateShopRequest/
UserName
Yes
One
String The Windows username of the user who is submitting the request.
Rate Shop Programming Information 41
XML RESPONSE
After the above XML request has been POSTed on the HTTP connection an XML response will be returned, which will adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeRateShopResponse Yes
One
Container Root element.
PierbridgeRateShopResponse/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeRateShopResponse/
Rates
Yes
One
Container Parent element for information about the rates.
PierbridgeRateShopResponse/
Rates/
Rate
No
Zero or More
Container Parent element for information about the rate.
PierbridgeRateShopResponse/
Rates/
Rate/
Carrier
No
Zero or One
Container Parenet element for information about the rate’s carrier.
PierbridgeRateShopResponse/
Rates/
Rate/
Carrier/
ID
No
Zero or One
Integer The numeric identifier of the carrier.
See Appendix A for valid values.
PierbridgeRateShopResponse/
Rates/
Rate/
Carrier/
Description
No
Zero or One
String Textual description of the carrier.
Rate Shop Programming Information 42
PierbridgeRateShopResponse/
Rates/
Rate/
Carrier/
SCAC
No
Zero or One
String The Standard Carrier Alpha Code (SCAC) of the carrier.
PierbridgeRateShopResponse/
Rates/
Rate/
ServiceType
No
Zero or One
Container Parenet element for information about the rate’s carrier service.
PierbridgeRateShopResponse/
Rates/
Rate/
ServiceType/
ID
No
Zero or One
Integer The numeric identifier of the carrier
service.
See Appendix A for valid values.
PierbridgeRateShopResponse/
Rates/
Rate/
ServiceType/
Description
No
Zero or One
String Textual description of the carrier service.
PierbridgeRateShopResponse/
Rates/
Rate/
ShippingCharge
No
Zero or One
Float The estimated cost for shipping the package.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateShopResponse/
Rates/
Rate/
AccessorialCharge
No
Zero or One
Float The estimated cost for any requested extra services, e.g. insurance, COD.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateShopResponse/
Rates/
Rate/
OtherCharge
No
Zero or One
Float Any other costs for shipping the package.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeRateShopResponse/
Rates/
Rate/
TotalCharge
No
Zero or One
Float The total cost for shipping the package.
This is the sum of shipping, accessorial, and other costs.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
Rate Shop Programming Information 43
PierbridgeRateShopResponse/
Rates/
Rate/
CommitmentLevel
No
Zero or One
String An indication of how long it will take for the package to get to the receiver.
PierbridgeRateShopResponse/
Rates/
Rate/
DeliveryIn
No
Zero or One
Integer The number of days the shipment will take to get to the receiver.
May be empty if the carrier does not provide this information.
Rate Shop Programming Information 44
BASIC PACKAGE
The following XML rate shops a package. This represents the minimum information that is typically provided for package rate shopping.
A rate group that includes express services (Airborne Express, FedEx Standard Overnight®, and UPS Next Day Air®) has been specified in this example.
The ‘Rate’ elements are sorted by ‘TotalCharge’ with the least expensive in the first ‘Rate’ element.
XML Request
<?xml version="1.0" encoding="UTF-8"?>
<PierbridgeRateShopRequest>
<RateGroup>1</RateGroup>
<ShipDate></ShipDate>
<Receiver>
<City>Washington</City>
<Region>DC</Region>
<PostalCode>20500</PostalCode>
<Country>US</Country>
</Receiver>
<Packages>
<Package>
<Weight>25</Weight>
</Package>
</Packages>
<UserName>user</UserName>
</PierbridgeRateShopRequest>
XML Response
<?xml version="1.0" encoding="utf-8"?>
<PierbridgeRateShopResponse>
<Rates>
<Rate>
<Carrier>
<ID>3</ID>
<Description>UPS</Description>
<SCAC>UPS</SCAC>
</Carrier>
<ServiceType>
<ID>23</ID>
<Description>UPS Next Day Air®</Description>
</ServiceType>
<ShippingCharge>48.94</ShippingCharge>
<AccessorialCharge>0</AccessorialCharge>
<OtherCharge>0</OtherCharge>
<TotalCharge>48.94</TotalCharge>
<CommitmentLevel>Est. delivery in 1 business day</CommitmentLevel>
<DeliveryIn>1</DeliveryIn>
</Rate>
<Rate>
<Carrier>
<ID>1</ID>
<Description>Airborne</Description>
<SCAC>ABX</SCAC>
</Carrier>
<ServiceType>
<ID>2</ID>
<Description>Express 10:30</Description>
</ServiceType>
Rate Shop Programming Information 45
<ShippingCharge>70.26</ShippingCharge>
<AccessorialCharge>15.46</AccessorialCharge>
<OtherCharge>0</OtherCharge>
<TotalCharge>85.72</TotalCharge>
<CommitmentLevel>Next business day by 10:30 A.M.</CommitmentLevel>
<DeliveryIn>1</DeliveryIn>
</Rate>
<Rate>
<Carrier>
<ID>2</ID>
<Description>FedEx</Description>
<SCAC>FDX</SCAC>
</Carrier>
<ServiceType>
<ID>7</ID>
<Description>FedEx Priority Overnight®</Description>
</ServiceType>
<ShippingCharge>80</ShippingCharge>
<AccessorialCharge>16</AccessorialCharge>
<OtherCharge>0</OtherCharge>
<TotalCharge>96</TotalCharge>
<CommitmentLevel>Not Provided</CommitmentLevel>
<DeliveryIn></DeliveryIn>
</Rate>
</Rates>
</PierbridgeRateShopResponse>
Rate Shop Programming Information 46
INTERNATIONAL
The following Xml rates an international package, which contains two different types of content.
A rate group that includes express international services (FedEx International Priority® and UPS Worldwide Express SM) has been specified in this example.
The ‘Rate’ elements are sorted by ‘TotalCharge’ with the least expensive in the first ‘Rate’ element.
XML Request
<?xml version="1.0" encoding="UTF-8"?>
<PierbridgeRateShopRequest>
<RateGroup>2</RateGroup>
<ShipDate></ShipDate>
<Receiver>
<CompanyName>Public Works and Government Services Canada</CompanyName>
<Street>Main Street</Street>
<City>Ottawa</City>
<Region>ON</Region>
<PostalCode>K1A 0S5</PostalCode>
<Country>CA</Country>
</Receiver>
<Packages>
<Package>
<ReceiverName>Mr Minister</ReceiverName>
<ReceiverPhone>1-800-622-6232</ReceiverPhone>
<Weight>25</Weight>
<Length>8</Length>
<Width>8</Width>
<Height>8</Height>
<International>
<Contents>
<Content>
<Code>090122</Code>
<Quantity>2</Quantity>
<Value>200</Value>
<Weight>10</Weight>
<Description>shoes</Description>
<OriginCountry>MX</OriginCountry>
</Content>
<Content>
<Code>490199</Code>
<Quantity>1</Quantity>
<Value>26</Value>
<Weight>5</Weight>
<Description>books</Description>
<OriginCountry>US</OriginCountry>
</Content>
</Contents>
</International>
</Package>
</Packages>
<UserName>user</UserName>
</PierbridgeRateShopRequest>
XML Response
<?xml version="1.0" encoding="utf-8"?>
<PierbridgeRateShopResponse>
<Rates>
Rate Shop Programming Information 47
<Rate>
<Carrier>
<ID>3</ID>
<Description>UPS</Description>
<SCAC>UPS</SCAC>
</Carrier>
<ServiceType>
<ID>26</ID>
<Description>UPS Worldwide Express SM</Description>
</ServiceType>
<ShippingCharge>129.09</ShippingCharge>
<AccessorialCharge>0</AccessorialCharge>
<OtherCharge>0</OtherCharge>
<TotalCharge>129.09</TotalCharge>
<CommitmentLevel>Est.Delivery In business day(s)</CommitmentLevel>
<DeliveryIn></DeliveryIn>
</Rate>
<Rate>
<Carrier>
<ID>2</ID>
<Description>FedEx</Description>
<SCAC>FDX</SCAC>
</Carrier>
<ServiceType>
<ID>12</ID>
<Description>FedEx International Priority®</Description>
</ServiceType>
<ShippingCharge>113.42</ShippingCharge>
<AccessorialCharge>22.68</AccessorialCharge>
<OtherCharge>0</OtherCharge>
<TotalCharge>136.1</TotalCharge>
<CommitmentLevel>Not Provided</CommitmentLevel>
<DeliveryIn></DeliveryIn>
</Rate>
</Rates>
</PierbridgeRateShopResponse>
Ship Programming Information 48
SHIP PROGRAMMING INFORMATION This interface allows you to ship items.
In the XML request you specify information such as the carrier (e.g. FedEx, UPS) you want to carry the items, the date to ship on, the receiver, item details such as weight and dimesions, and any special services required (e.g. collect-on-delivery or insurance).
The XML response will indicate whether your request has succeeded. If it hasn’t then an indication of what went wrong will be provided. If it was successful then information such as shipping charges, tracking numbers, labels and documentation will be returned.
XML REQUEST
The request XML document must adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeShipRequest Yes
One
Container Root element.
PierbridgeShipRequest/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeShipRequest/
RecordIdentifiers
No
Zero or One
Container Parent element for Record Identifier elements at the shipment-level.
Record Identifiers allow you to associate zero or more key values with a shipment.
These are typically used to link a shipment to key values in external systems, e.g. a stock or sales database.
PierbridgeShipRequest/
RecordIdentifiers/
RecordIdentifier
No
Zero or Many
Container Parent element for information about each Record Identifier.
Include one of these elements for each Record Identifier.
PierbridgeShipRequest/
RecordIdentifiers/
RecordIdentifier/
Keys
No
Zero or Many
Container Parent element for information about the Record Identifier’s keys.
Ship Programming Information 49
PierbridgeShipRequest/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key1
No
Zero or One
String First key value.
PierbridgeShipRequest/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key2
No
Zero or One
String Second key value.
PierbridgeShipRequest/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key3
No
Zero or One
String Third key value.
PierbridgeShipRequest/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key4
No
Zero or One
String Fourth key value.
PierbridgeShipRequest/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key5
No
Zero or One
String Fifth key value.
PierbridgeShipRequest/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key6
No
Zero or One
String Sixth key value.
PierbridgeShipRequest/
Outputs
No
Zero or One
Container Parent element for Output elements at the shipment-level.
Output elements are used to modify (in a
limited way) how the labels and documents are produced and printed.
Ship Programming Information 50
PierbridgeShipRequest/
Outputs/
Output
No
Zero or Many
Container Parent element for information about each Output.
Include one of these elements for each Output.
PierbridgeShipRequest/
Outputs/
Output/
OutputType
No
Zero or One
Integer The type of label or document.
If blank then all other settings in this block apply to all labels and documents.
See Appendix A for valid values.
PierbridgeShipRequest/
Outputs/
Output/
Copies
No
Zero or One
Integer The number of copies of the label or document to produce.
PierbridgeShipRequest/
Outputs/
Output/
Pieces
No
Zero or One
Integer The number of pieces (e.g. packages, pallets) to produce the label or document for.
E.g. if set to 2 then labels with '1 of 2' and '2 or 2' indicators will be produced.
PierbridgeShipRequest/
Outputs/
Output/
PrinterID
No
Zero or One
Integer The numeric identifier of the printer to print the label or document to.
Must be a value from the Printers.[ID] column in the Pierbridge Shipment Server database.
PierbridgeShipRequest/
Outputs/
Output/
PrintToClient
No
Zero or One
Boolean Indicates whether to print the label or document to the front-end.
Omit the element if the default printing method for the label or document is to be used, else set to ‘True’.
PierbridgeShipRequest/
Live
No
Zero or One
Boolean Indicates whether the shipment is a test or not.
Omit the element if the shipment is a test one, else set to ‘True’.
PierbridgeShipRequest/
CloseShipment
No
Zero or One
Boolean Indicates whether this shipment is to instigate a multipack shipment.
Omit the element if a multipack shipment is not required, else set to ‘True’.
See section ‘Mulitpack Programming Information’ for details on multipack rate and ship.
PierbridgeShipRequest/
ShippingNotes
No
Zero or One
String Notes that are to accompany the shipment.
Printed on shipping documentation.
Ship Programming Information 51
PierbridgeShipRequest/
PurchaseOrderNumber
No
Zero or One
String Receiver’s purchase order number.
Printed on shipping documentation.
PierbridgeShipRequest/
SalesOrderNumber
No
Zero or One
String Your sales order number.
Printed on shipping documentation.
PierbridgeShipRequest/
PickListNumber
No
Zero or One
String The picklist number associated with the shipment.
PierbridgeShipRequest/
Carrier
Yes
One
Integer The numeric identifier of the carrier (e.g.
Fedex, UPS) who is to carry the shipment.
See Appendix A for valid values.
PierbridgeShipRequest/
ServiceType
Yes
One
Integer The numeric identifier of the carrier service (e.g. Next Day, Ground, Express) that is to be used to carry the shipment.
See Appendix A for valid values.
PierbridgeShipRequest/
SuggestedServiceType
No
Zero or One
Integer The numeric identifier of the carrier service (e.g. Next Day, Ground, Express) that was suggested for use to carry the shipment.
Used to track whether users have selected
a different carrier to the one recommended by e.g. a rate shop.
See Appendix A for valid values.
PierbridgeShipRequest/
CustomerServiceType
No
Zero or One
Integer The numeric identifier of the carrier service (e.g. Next Day, Ground, Express) that will be used to calculate the costs passed onto the customer.
Used to ship using one service but charge the customer the rate for a different service.
Requires extra configuration to fully enable this feature.
See Appendix A for valid values.
PierbridgeShipRequest/
CustomerCostOption
No
Zero or One
Integer The numeric identifier of the cost option that is to be applied to the shipping charges.
Used to charge the customer a fixed cost or some multiple of actual shipping charges.
Must be a value from the [Cost Options].[ID] column of the Pierbridge Shipment Server database.
PierbridgeShipRequest/
ShipDate
Yes
One
Date The date that the items are to be shipped.
Defaults to current date if left blank.
Ship Programming Information 52
PierbridgeShipRequest/
OrderDate
No
Zero or One
Date The date that the items are to be shipped were ordered on.
PierbridgeShipRequest/
SaturdayDelivery
No
Zero or One
Boolean Indicates whether the shipment is to be delivered on a Saturday.
Omit the element if a Saturday delivery is not required, else set to ‘True’.
Most carriers levy an extra charge for this option.
PierbridgeShipRequest/
TotalCharge
No
Zero or One
Float The cost that the customer will be charged for the shipment.
Used for (non-rating) carriers that do not provide shipping costs.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipRequest/
CustomerID
No
Zero or One
Integer The numeric identifier of the customer the shipment is for.
Must be a value from the Customers.[ID] column in the Pierbridge Shipment Server database.
PierbridgeShipRequest/
CustomerDUNS
No
Zero or One
String The customer Dun and Bradstreet (DUNS)
identifier.
If this element and CustomerID is used, then the value in this element has priority.
PierbridgeShipRequest/
CustomerVendorNumber
No
Zero or One
String The vendor number of the customer the shipment is for.
If this element and CustomerID is used, then the value in this element has priority.
PierbridgeShipRequest/
CustomerLocationIdentifier
No
Zero or One
String The location number of the customer the shipment is for.
If this element and CustomerID is used,
then the value in this element has priority.
PierbridgeShipRequest/
AccountID
No
Zero or One
Integer Overrides the sender's account to allow shipping using any account.
Must be a value from the Accounts.[ID] column in the Pierbridge Shipment Server database.
PierbridgeShipRequest/
CarrierName
No
Zero or One
String The name of the carrier to ship with.
Overrides the name of the carrier that is stored in the Pierbridge Shipment Server database.
Ship Programming Information 53
PierbridgeShipRequest/
Receiver
Yes
One
Container Parent element for Receiver address elements.
PierbridgeShipRequest/
Receiver/
CompanyName
No
Zero or One
String The name of the company the shipment is to be shipped to.
PierbridgeShipRequest/
Receiver/
Street
Yes
One
String The first line of the address the shipment is to be shipped to.
PierbridgeShipRequest/
Receiver/
Locale
No
Zero or One
String The second line of the address the shipment is to be shipped to.
PierbridgeShipRequest/
Receiver/
Other
No
Zero or One
String The third line of the address the shipment is to be shipped to.
PierbridgeShipRequest/
Receiver/
City
Yes
One
String The city the shipment is to be shipped to.
PierbridgeShipRequest/
Receiver/
Region
Yes
One
String The region the shipment is to be shipped to.
If in the US, the two-letter state code should be used, e.g. ‘MA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘Massachusetts’ or ‘Mass.’ into the required code.
PierbridgeShipRequest/
Receiver/
PostalCode
Yes
One
String The postal or zip code the shipment is to be shipped to.
PierbridgeShipRequest/
Receiver/
Country
Yes
One
String The country the shipment is to be shipped to.
The standard two-letter country codes should be used, e.g. ‘US’ or ‘CA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘USA’ or ‘United States’ into the required code.
PierbridgeShipRequest/
Receiver/
Residential
No
Zero or One
Boolean Indicates whether the address to be shipped to is a residential one.
Omit the element if it is not a residential address, else set to ‘True’.
Ship Programming Information 54
PierbridgeShipRequest/
Receiver/
Modified
No
Zero or One
Boolean Indicates whether the address to be shipped to has been modified.
Omit the element if it is has not been modified, else set to ‘True’.
PierbridgeShipRequest/
ReturnTo
No
Zero or One
Container Parent element for Return To address elements.
The individual or organization identified in this element and its children is the destination of the shipment should it be returned to sender.
PierbridgeShipRequest/
ReturnTo/
Name
No
Zero or One
String The name of the person.
PierbridgeShipRequest/
ReturnTo/
CompanyName
No
Zero or One
String The name of the company.
PierbridgeShipRequest/
ReturnTo/
Street
No
Zero or One
String The first line of the address.
PierbridgeShipRequest/
ReturnTo/
Locale
No
Zero or One
String The second line of the address.
PierbridgeShipRequest/
ReturnTo/
Other
No
Zero or One
String The third line of the address.
PierbridgeShipRequest/
ReturnTo/
City
No
Zero or One
String The city.
PierbridgeShipRequest/
ReturnTo/
Region
No
Zero or One
String The region.
If in the US, the two-letter state code should be used, e.g. ‘MA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘Massachusetts’ or ‘Mass.’ into the required code.
PierbridgeShipRequest/
ReturnTo/
PostalCode
No
Zero or One
String The postal or zip code.
Ship Programming Information 55
PierbridgeShipRequest/
ReturnTo/
Country
No
Zero or One
String The country.
The standard two-letter country codes should be used, e.g. ‘US’ or ‘CA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘USA’ or ‘United States’ into the required code.
PierbridgeShipRequest/
Billing
No
Zero or One
Container Parent element for Billing information and address elements.
The individual or organization identified in this element and its children will pay the shipping charges.
PierbridgeShipRequest/
Billing/
PayerType
No
Zero or One
Integer The numeric identifier of the type of payer.
If the element is omitted, then it is assumed that the sender is paying the shipping charges.
See Appendix A for valid values.
PierbridgeShipRequest/
Billing/
AccountNumber
No
Zero or One
String The account number of the payer.
Only needed if PayerType is set to ‘2’ (receiver) or ‘3’ (third party).
PierbridgeShipRequest/
Billing/
CompanyName
No
Zero or One
String The name of the company.
PierbridgeShipRequest/
Billing/
Street
No
Zero or One
String The first line of the address.
PierbridgeShipRequest/
Billing/
Locale
No
Zero or One
String The second line of the address.
PierbridgeShipRequest/
Billing/
Other
No
Zero or One
String The third line of the address.
PierbridgeShipRequest/
Billing/
City
No
Zero or One
String The city.
Ship Programming Information 56
PierbridgeShipRequest/
Billing/
Region
No
Zero or One
String The region.
If in the US, the two-letter state code should be used, e.g. ‘MA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘Massachusetts’ or ‘Mass.’ into the required code.
PierbridgeShipRequest/
Billing/
PostalCode
No
Zero or One
String The postal or zip code.
PierbridgeShipRequest/
Billing/
Country
No
Zero or One
String The country.
The standard two-letter country codes should be used, e.g. ‘US’ or ‘CA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘USA’ or ‘United States’ into the required code.
PierbridgeShipRequest/
Invoice
No
Zero or One
Container Parent element for Invoice address elements.
The individual or organization identified in this element and its children is the one who is paying for the items being shipped.
PierbridgeShipRequest/
Invoice/
CompanyName
No
Zero or One
String The name of the company.
PierbridgeShipRequest/
Invoice/
Street
No
Zero or One
String The first line of the address.
PierbridgeShipRequest/
Invoice/
Locale
No
Zero or One
String The second line of the address.
PierbridgeShipRequest/
Invoice/
Other
No
Zero or One
String The third line of the address.
PierbridgeShipRequest/
Invoice/
City
No
Zero or One
String The city.
Ship Programming Information 57
PierbridgeShipRequest/
Invoice/
Region
No
Zero or One
String The region.
If in the US, the two-letter state code should be used, e.g. ‘MA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘Massachusetts’ or ‘Mass.’ into the required code.
PierbridgeShipRequest/
Invoice/
PostalCode
No
Zero or One
String The postal or zip code.
PierbridgeShipRequest/
Invoice/
Country
No
Zero or One
String The country.
The standard two-letter country codes should be used, e.g. ‘US’ or ‘CA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘USA’ or ‘United States’ into the required code.
PierbridgeShipRequest/
International
No
Zero or One
Container Parent element for shipment-level international shipping elements.
PierbridgeShipRequest/
International/
Duty
No
Zero or One
Container Parent element for international duty
payer elements.
If the element is omitted, then it is assumed that the sender is paying the duty charges.
PierbridgeShipRequest/
International/
Duty/
PayerType
No
Zero or One
Integer The numeric identifier of the type of payer.
If the element is omitted, then it is assumed that the sender is paying the duty charges.
See Appendix A for valid values.
PierbridgeShipRequest/
International/
Duty/
AccountNumber
No
Zero or One
String The account number of the duty payer.
Only needed if PayerType is set to ‘2’
(receiver) or ‘3’ (third party).
PierbridgeShipRequest/
International/
UltimateDestinationCountry
No
Zero or One
String The ultimate destination country of the shipment.
Used if the receiver is an intermediatary who will forward the shipment to this country.
The standard two-letter country codes should be used, e.g. ‘US’ or ‘CA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘USA’ or ‘United States’ into the required code.
Ship Programming Information 58
PierbridgeShipRequest/
International/
SenderReceiverRelated
No
Zero or One
Boolean Indicates whether the sender and receiver are related.
Special rules apply to international shipments between related parties.
PierbridgeShipRequest/
International/
TotalDutyValue
No
Zero or One
Float The total dutiable value of the shipment.
If this element is omitted then the Shipment Server will calculate this value based on the Shipment’s contents.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipRequest/
International/
AESTransactionNumber
No
Zero or One
String The transaction number associated with the filing of a Shipper’s Export Declaration for the shipment.
PierbridgeShipRequest/
International/
TermsOfSale
No
Zero or One
Integer The numeric identifier for the terms of sale type.
This indicates the rights and obligations of each party when it comes to transporting the shipment.
See Appendix A for valid values.
PierbridgeShipRequest/
Packages
Yes
One
Container Parent element for packages elements.
PierbridgeShipRequest/
Packages/
Package
Yes
One
Container Parent element for a package element.
PierbridgeShipRequest/
Packages/
Package/
RecordIdentifiers
No
Zero or One
Container Parent element for Record Identifier elements at the package-level.
Record Identifiers allow you to associate zero or more key values with a package.
These are typically used to link a package to key values in external systems, e.g. a stock or sales database.
PierbridgeShipRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier
No
Zero or Many
Container Parent element for information about each Record Identifier.
Include one of these elements for each Record Identifier.
Ship Programming Information 59
PierbridgeShipRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys
No
Zero or Many
Container Parent element for information about the Record Identifier’s keys.
PierbridgeShipRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key1
No
Zero or One
String First key value.
PierbridgeShipRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key2
No
Zero or One
String Second key value.
PierbridgeShipRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key3
No
Zero or One
String Third key value.
PierbridgeShipRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key4
No
Zero or One
String Fourth key value.
Ship Programming Information 60
PierbridgeShipRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key5
No
Zero or One
String Fifth key value.
PierbridgeShipRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key6
No
Zero or One
String Sixth key value.
PierbridgeShipRequest/
Packages/
Package/
Outputs
No
Zero or One
Container Parent element for Output elements at the package-level.
Output elements are used to modify (in a limited way) how the labels and documents are produced.
PierbridgeShipRequest/
Packages/
Package/
Outputs/
Output
No
Zero or Many
Container Parent element for information about each Output.
Include one of these elements for each Output.
PierbridgeShipRequest/
Packages/
Package/
Outputs/
Output/
OutputType
No
Zero or One
Integer The type of label or document.
If blank then all other settings in this block apply to all labels and documents.
See Appendix A for valid values.
PierbridgeShipRequest/
Packages/
Package/
Outputs/
Output/
Copies
No
Zero or One
Integer The number of copies of the label or document to produce.
Ship Programming Information 61
PierbridgeShipRequest/
Packages/
Package/
Outputs/
Output/
Pieces
No
Zero or One
Integer The number of pieces (e.g. packages, pallets) to produce the label or document for.
E.g. if set to 2 then labels with '1 of 2' and '2 or 2' indicators will be produced.
PierbridgeShipRequest/
Packages/
Package/
Outputs/
Output/
PrinterID
No
Zero or One
Integer The numeric identifier of the printer to print the label or document to.
Must be a value from the Printers.[ID] column in the Pierbridge Shipment Server database.
PierbridgeShipRequest/
Packages/
Package/
Outputs/
Output/
PrintToClient
No
Zero or One
Boolean Indicates whether to print the label or document to the front-end.
Omit the element if the default printing method for the label or document is to be used, else set to ‘True’.
PierbridgeShipRequest/
Packages/
Package/
Copies
No
Zero or One
Integer Indicates the number of additional copies of the package that are to be shipped.
Defaults to zero additional copies if omitted.
PierbridgeShipRequest/
Packages/
Package/
ShipperReference
No
Zero or One
String The reference number that you want to associate with the package.
This value will appear on the package’s label.
PierbridgeShipRequest/
Packages/
Package/
ReferenceOne
No
Zero or One
String Can be used to associate a package with a reference number.
PierbridgeShipRequest/
Packages/
Package/
ReferenceTwo
No
Zero or One
String Can be used to associate a package with a reference number.
Ship Programming Information 62
PierbridgeShipRequest/
Packages/
Package/
ReferenceThree
No
Zero or One
String Can be used to associate a package with a reference number.
PierbridgeShipRequest/
Packages/
Package/
ReceiverName
Yes
One
String The name of the person the package is to be shipped to.
This element is provided at this level, rather than the shipment-level, as packages may require the attention of different people at the same address.
PierbridgeShipRequest/
Packages/
Package/
ReceiverPhone
Yes
One
String The telephone number of the person the package is to be shipped to.
This element is provided at this level, rather than the shipment-level, as packages may require the attention of different people at the same address.
PierbridgeShipRequest/
Packages/
Package/
ReceiverEmail
No
Zero or One
String The email address of the person the package is to be shipped to.
This element is provided at this level, rather than the shipment-level, as packages may require the attention of different people at the same address.
PierbridgeShipRequest/
Packages/
Package/
PackageType
Yes
One
Integer The numeric identifier for the type of package the items to be shipped are contained in.
See Appendix A for valid values.
PierbridgeShipRequest/
Packages/
Package/
Weight
Yes
One
Float The weight of the package.
The units (e.g. pound or kilogram) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipRequest/
Packages/
Package/
Length
No
Zero or One
Integer The length of the package.
The units (e.g. inch or centimeter) are determined by the configuration of the
Pierbridge Shipment Server.
PierbridgeShipRequest/
Packages/
Package/
Width
No
Zero or One
Integer The width of the package.
The units (e.g. inch or centimeter) are determined by the configuration of the Pierbridge Shipment Server.
Ship Programming Information 63
PierbridgeShipRequest/
Packages/
Package/
Height
No
Zero or One
Integer The height of the package.
The units (e.g. inch or centimeter) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipRequest/
Packages/
Package/
ContentDescription
No
Zero or One
String The description of the package’s content.
This value will appear on the package’s label.
PierbridgeShipRequest/
Packages/
Package/
WayBillNumber
No
Zero or One
String The tracking number that is to be assigned to the package.
Used for carriers that do not auto-generate tracking numbers.
PierbridgeShipRequest/
Packages/
Package/
Insurance
No
Zero or One
Container Parent element for information about Insurance.
If insurance is not required for this package, then omit this element and its children.
PierbridgeShipRequest/
Packages/
Package/
Insurance/
Type
No
Zero or One
Integer This value should be set to ‘1’ if insurance is required.
PierbridgeShipRequest/
Packages/
Package/
Insurance/
Value
No
Zero or One
Float The value the package is to be insured for.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipRequest/
Packages/
Package/
COD
No
Zero or One
Container Parent element for information about Collect On Delivery (COD).
If COD is not required for this package, then omit this element and its children.
PierbridgeShipRequest/
Packages/
Package/
COD/
Type
No
Zero or One
Integer The numeric identifier for the type of Collect On Delivery.
See Appendix A for valid values.
Ship Programming Information 64
PierbridgeShipRequest/
Packages/
Package/
COD/
Value
No
Zero or One
Float The value that is to be collected by the carrier when this package is delivered.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipRequest/
Packages/
Package/
Hold
No
Zero or One
Boolean Indicates whether the package should be held for collection at a carrier’s depot or some other location.
Omit this element if the package is not to be held, else set to ‘True’.
PierbridgeShipRequest/
Packages/
Package/
Holder
No
Zero or One
Container Parent element for information about the
individual or organization who is to hold the package for collection.
If holder information is not required for this package, then omit this element and its children.
PierbridgeShipRequest/
Packages/
Package/
Holder/
Name
No
Zero or One
String The name of the individual who is to hold the package for collection.
PierbridgeShipRequest/
Packages/
Package/
Holder/
CompanyName
No
Zero or One
String The name of the company where the
package is to be held for collection.
PierbridgeShipRequest/
Packages/
Package/
Holder/
Street
No
Zero or One
String The first line of the address where the package is to be held for collection.
PierbridgeShipRequest/
Packages/
Package/
Holder/
Locale
No
Zero or One
String The second line of the address where the package is to be held for collection.
Ship Programming Information 65
PierbridgeShipRequest/
Packages/
Package/
Holder/
Other
No
Zero or One
String The third line of the address where the package is to be held for collection.
PierbridgeShipRequest/
Packages/
Package/
Holder/
City
No
Zero or One
String The city where the package is to be held for collection.
PierbridgeShipRequest/
Packages/
Package/
Holder/
Region
No
Zero or One
String The region where the package is to be held for collection
If in the US, the two-letter state code should be used, e.g. ‘MA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘Massachusetts’ or ‘Mass.’ into the required code.
PierbridgeShipRequest/
Packages/
Package/
Holder/
PostalCode
No
Zero or One
String The postal or zip code where the package is to be held for collection.
PierbridgeShipRequest/
Packages/
Package/
Holder/
Country
No
Zero or One
String The country where the package is to be held for collection
The standard two-letter country codes should be used, e.g. ‘US’ or ‘CA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘USA’ or ‘United States’ into the required code.
PierbridgeShipRequest/
Packages/
Package/
Holder/
Phone
No
Zero or One
String The phone number of the individual who is to hold the package for collection.
PierbridgeShipRequest/
Packages/
Package/
AdditionalHandling
No
Zero of One
Boolean Indicates that extra handling measures are required when loading the package.
Omit this element if the package does not require additional handling, else set to ‘True’.
Ship Programming Information 66
PierbridgeShipRequest/
Packages/
Package/
Oversize
No
Zero of One
Integer The numeric identifier for the package’s oversize status.
Omit this element if the package is not oversize.
See Appendix A for valid values.
PierbridgeShipRequest/
Packages/
Package/
LargePackage
No
Zero of One
Boolean Indicates that this package has UPS ‘Large Package’ dimensions.
Omit this element if the package does not have UPS ‘Large Package’ dimensions, else set to ‘True’.
PierbridgeShipRequest/
Packages/
Package/
DeliveryConfirmation
No
Zero of One
Integer The numeric identifier for the type of
delivery confirmation required for this package.
Omit this element if the delivery confirmation is not required.
See Appendix A for valid values.
PierbridgeShipRequest/
Packages/
Package/
FreightClass
No
Zero of One
String The freight class of the package.
Used when LTL shipping.
PierbridgeShipRequest/
Packages/
Package/
NMFC
No
Zero of One
String The National Motor Freight Classification of the package.
Used when LTL shipping.
PierbridgeShipRequest/
Packages/
Package/
ItemsOnPallet
No
Zero of One
Integer The number of items on a pallet.
Used when LTL shipping, where the Package can be treated as a pallet.
PierbridgeShipRequest/
Packages/
Package/
InsidePickup
No
Zero of One
Boolean Indicates that the package is to be picked up inside.
Omit this element if inside pickup is not required, else set to ‘True’.
PierbridgeShipRequest/
Packages/
Package/
InsideDelivery
No
Zero of One
Boolean Indicates that the package is to be delivered inside.
Omit this element if inside delivery is not required, else set to ‘True’.
Ship Programming Information 67
PierbridgeShipRequest/
Packages/
Package/
NonStandardContainer
No
Zero of One
Boolean Indicates that the package is a non-standard container.
Omit this element if the package is in a standard container, else set to ‘True’.
PierbridgeShipRequest/
Packages/
Package/
EmailNotification
No
Zero of One
Boolean Indicates that email notification of the package’s delivery is required.
The value in element ReceiverEmail must be provided if this value is set to ‘True’.
Omit this element if email notification is not required, else set to ‘True’.
PierbridgeShipRequest/
Packages/
Package/
International
No
Zero or One
Container Parent element for information about the international aspects of the package.
If international shipping is not being performed then this element can be omitted.
PierbridgeShipRequest/
Packages/
Package/
International/
DocumentsOnly
No
Zero or One
Boolean Indicates whether the package contains only documents.
Omit this element if the package contains items other than documents.
If this element has a value of ‘True’ then the following Contents element is not required.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents
No
Zero or One
Container Parent element for information about the package’s contents.
If the package contains only documents then this element and its children can be omitted.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content
No
Zero or Many
Container Parent element for information about each Content item.
Include one of these elements for each Content item.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
RecordIdentifiers
No
Zero or One
Container Parent element for Record Identifier elements at the content-level.
Record Identifiers allow you to associate zero or more key values with a content item.
These are typically used to link a content item to key values in external systems, e.g. a stock or sales database.
Ship Programming Information 68
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
RecordIdentifiers/
RecordIdentifier
No
Zero or Many
Container Parent element for information about each Record Identifier.
Include one of these elements for each Record Identifier.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
RecordIdentifiers/
RecordIdentifier/
Keys
No
Zero or Many
Container Parent element for information about the Record Identifier’s keys.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key1
No
Zero or One
String First key value.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key2
No
Zero or One
String Second key value.
Ship Programming Information 69
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key3
No
Zero or One
String Third key value.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key4
No
Zero or One
String Fourth key value.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key5
No
Zero or One
String Fifth key value.
Ship Programming Information 70
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key6
No
Zero or One
String Sixth key value.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
Code
No
Zero or One
String The Harmonized, or Schedule-B, code for the item.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
Quantity
No
Zero or One
Integer The number of items of this content type that are in this package.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
OrderedQuantity
No
Zero or One
Integer The number of items of this content type that were ordered.
Ship Programming Information 71
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
BackOrderedQuantity
No
Zero or One
Integer The number of items of this content type that are on back order.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
Value
No
Zero or One
Float The value of a single item.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
Weight
No
Zero or One
Float The weight of a single item.
The units (e.g. pound or kilogram) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
Description
No
Zero or One
String The description of the item.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
OriginCountry
No
Zero or One
String The country the item originated from.
Ship Programming Information 72
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
PurchaseOrderNumber
No
Zero or One
String Receiver’s purchase order number.
Printed on shipping documentation.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
SalesOrderNumber
No
Zero or One
String Your sales order number.
Printed on shipping documentation.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
ItemCode
No
Zero or One
String Any other code associated with the item.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
ItemDescription
No
Zero or One
String Any other description for the item.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
CustomerCode
No
Zero or One
String The customer’s code for the item.
Ship Programming Information 73
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
PartNumber
No
Zero or One
String The part number of the item.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
BinNumber
No
Zero or One
String The bin number of the item.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
LotNumber
No
Zero or One
String The lot number of the item.
PierbridgeShipRequest/
Packages/
Package/
International/
Contents/
Content/
SerialNumber
No
Zero or One
String The serial number of the item.
PierbridgeShipRequest/
UserName
Yes
One
String The Windows username of the user who is submitting the request.
Ship Programming Information 74
XML RESPONSE
After the above XML request has been POSTed on the HTTP connection an XML response will be returned, which will adhere to the following structure.
Note that charges are returned at shipment- and package-levels. For a shipment that contains one package these will be the same. For a multipack shipment the shipment-level charges will be the sum over all package charges.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeShipResponse Yes
One
Container Root element.
PierbridgeShipResponse/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeShipResponse/
Shipping
Yes
One
Container Parent element for information about shipment-level shipping charges and commitment level.
These are the charges that are returned by the carrier.
PierbridgeShipResponse/
Shipping/
ShippingCharge
Yes
One
Float The estimated cost for shipping the shipment.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipResponse/
Shipping/
AccessorialCharge
Yes
One
Float The estimated cost for any requested extra services, e.g. insurance, COD.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipResponse/
Shipping/
OtherCharge
Yes
One
Float Any other costs for shipping the shipment.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipResponse/
Shipping/
TotalCharge
Yes
One
Float The total cost for shipping the shipment.
This is the sum of shipping, accessorial, and other costs.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
Ship Programming Information 75
PierbridgeShipResponse/
Shipping/
CommitmentLevel
Yes
One
String An indication of how long it will take for the package to get to the receiver.
PierbridgeShipResponse/
Customer
Yes
One
Container Parent element for information about shipment-level customer charges and commitment level.
Customer charges are those that the customer pays.
These charges can be calculated in many ways, all of which require extra configuration of the Pierbridge Shipment Server.
If no extra calculations are performed then they will be the same as the Shipping charges.
PierbridgeShipResponse/
Customer/
ShippingCharge
Yes
One
Float The estimated cost for shipping the shipment.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipResponse/
Customer/
AccessorialCharge
Yes
One
Float The estimated cost for any requested extra services, e.g. insurance, COD.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipResponse/
Customer/
OtherCharge
Yes
One
Float Any other costs for shipping the shipment.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipResponse/
Customer/
TotalCharge
Yes
One
Float The total cost for shipping the shipment.
This is the sum of shipping, accessorial, and other costs.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipResponse/
Customer/
CommitmentLevel
Yes
One
String An indication of how long it will take for the package to get to the receiver.
PierbridgeShipResponse/
Documents
No
Zero or One
Container Parent element for shipment document elements.
Note, documents are only included in the response if they are configured to do so.
Ship Programming Information 76
PierbridgeShipResponse/
Documents/
Output
No
Zero or One
Container Parent element for shipment document elements.
One of these elements is provided for each document associated with the shipment.
PierbridgeShipResponse/
Documents/
Output/
Type
No
Zero or One
Integer Numeric identifier for the type of document.
See Appendix A for valid values.
PierbridgeShipResponse/
Documents/
Output/
Format
No
Zero or One
Integer Numeric identifier for the format of the document.
See Appendix A for valid values.
PierbridgeShipResponse/
Documents/
Output/
MimeType
No
Zero or One
String Mime-Type of the document.
PierbridgeShipResponse/
Documents/
Output/
Content
No
Zero or One
String A base64-encoded string that contains the document data.
PierbridgeShipResponse/
Packages
Yes
One
Container Parent element for packages elements.
PierbridgeShipResponse/
Packages/
Package
Yes
One
Container Parent element for a package element.
PierbridgeShipResponse/
Packages/
Package/
Status
Yes
One
Container Parent element for package status elements.
PierbridgeShipResponse/
Packages/
Package/
Status/
Code
Yes
One
Integer Indicates whether the package has been successfully shipped.
A value of ‘0’ indicates failure and ‘1’ indicates success.
Ship Programming Information 77
PierbridgeShipResponse/
Packages/
Package/
Status/
Description
Yes
One
String A textual description of the package’s success.
If the package has failed, then the value will summarise why it failed.
PierbridgeShipResponse/
Packages/
Package/
ShipperReference
No
Zero or One
String The reference number that you associated with the package in the request.
This value will appear on the package’s label.
PierbridgeShipResponse/
Packages/
Package/
WayBillNumber
Yes
One
String The tracking number that has been assigned to the package.
PierbridgeShipResponse/
Packages/
Package/
PackageID
Yes
One
Integer A unique numeric identifier for the
package.
PierbridgeShipResponse/
Packages/
Package/
Labels
No
Zero or One
Container Parent element for package labels elements.
Note, labels are only included in the response if they are configured to do so.
PierbridgeShipResponse/
Packages/
Package/
Labels/
Output
No
Zero or Many
Container Parent element for package label elements.
One of these elements is provided for each label associated with the package.
PierbridgeShipResponse/
Packages/
Package/
Labels/
Output/
Type
No
Zero or One
Integer Numeric identifier for the type of label.
See Appendix A for valid values.
Ship Programming Information 78
PierbridgeShipResponse/
Packages/
Package/
Labels/
Output/
Format
No
Zero or One
Integer Numeric identifier for the format of the label.
See Appendix A for valid values.
PierbridgeShipResponse/
Packages/
Package/
Labels/
Output/
MimeType
No
Zero or One
String Mime-Type of the label.
PierbridgeShipResponse/
Packages/
Package/
Labels/
Output/
Content
No
Zero or One
String A base64-encoded string that contains the label data.
PierbridgeShipResponse/
Packages/
Package/
Shipping
Yes
One
Container Parent element for information about package-level shipping charges.
These are the charges that are returned by the carrier.
PierbridgeShipResponse/
Packages/
Package/
Shipping/
ShippingCharge
Yes
One
Float The estimated cost for shipping the package.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipResponse/
Packages/
Package/
Shipping/
AccessorialCharge
Yes
One
Float The estimated cost for any requested extra services, e.g. insurance, COD.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
Ship Programming Information 79
PierbridgeShipResponse/
Packages/
Package/
Shipping/
OtherCharge
Yes
One
Float Any other costs for shipping the package.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipResponse/
Packages/
Package/
Shipping/
TotalCharge
Yes
One
Float The total cost for shipping the package.
This is the sum of shipping, accessorial, and other costs.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipResponse/
Packages/
Package/
Customer
Yes
One
Container Parent element for information about package-level customer charges.
Customer charges are those that the customer pays.
These charges can be calculated in many ways, all of which require extra configuration of the Pierbridge Shipment
Server.
If no extra calculations are performed then they will be the same as the Shipping charges.
PierbridgeShipResponse/
Packages/
Package/
Customer/
ShippingCharge
Yes
One
Float The estimated cost for shipping the package.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipResponse/
Packages/
Package/
Customer/
AccessorialCharge
Yes
One
Float The estimated cost for any requested extra services, e.g. insurance, COD.
The units (e.g. USD or CAD) are
determined by the configuration of the Pierbridge Shipment Server.
PierbridgeShipResponse/
Packages/
Package/
Customer/
OtherCharge
Yes
One
Float Any other costs for shipping the package.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
Ship Programming Information 80
PierbridgeShipResponse/
Packages/
Package/
Customer/
TotalCharge
Yes
One
Float The total cost for shipping the package.
This is the sum of shipping, accessorial, and other costs.
The units (e.g. USD or CAD) are determined by the configuration of the
Pierbridge Shipment Server.
Ship Programming Information 81
BASIC PACKAGE
The following XML ships a package. This represents the minimum information that is typically provided for package shipping.
A DHL ground carrier service has been specified in this example.
Note that the Content elements (in the response XML) have an empty value; these elements, when they have a value, have a large base64-encoded string, which is omitted here for brevity.
XML Request
<?xml version="1.0" encoding="UTF-8"?>
<PierbridgeShipRequest>
<Carrier>1</Carrier>
<ServiceType>6</ServiceType>
<ShipDate></ShipDate>
<Receiver>
<Street>1600 Pennsylvania Avenue NW</Street>
<City>Washington</City>
<Region>DC</Region>
<PostalCode>20500</PostalCode>
<Country>US</Country>
</Receiver>
<Packages>
<Package>
<ReceiverName>Mr President</ReceiverName>
<ReceiverPhone>202-456-1414</ReceiverPhone>
<PackageType>2</PackageType>
<Weight>10.5</Weight>
</Package>
</Packages>
<UserName>user</UserName>
</PierbridgeShipRequest>
XML Response
<?xml version="1.0" encoding="utf-8"?>
<PierbridgeShipResponse>
<Shipping>
<ShippingCharge>5.35</ShippingCharge>
<AccessorialCharge>0.24</AccessorialCharge>
<OtherCharge>0.00</OtherCharge>
<TotalCharge>5.59</TotalCharge>
<CommitmentLevel>Est. delivery in 2 business day(s)</CommitmentLevel>
</Shipping>
<Customer>
<ShippingCharge>5.11</ShippingCharge>
<AccessorialCharge>0.00</AccessorialCharge>
<OtherCharge>0.00</OtherCharge>
<TotalCharge>5.11</TotalCharge>
<CommitmentLevel></CommitmentLevel>
</Customer>
<Packages>
<Package>
<Status>
<Code>1</Code>
<Description>Success</Description>
</Status>
<WayBillNumber>28652708254</WayBillNumber>
<Shipping>
<ShippingCharge>5.35</ShippingCharge>
Ship Programming Information 82
<AccessorialCharge>0.24</AccessorialCharge>
<OtherCharge>0</OtherCharge>
<TotalCharge>5.59</TotalCharge>
</Shipping>
<Customer>
<ShippingCharge>5.11</ShippingCharge>
<AccessorialCharge>0.00</AccessorialCharge>
<OtherCharge>0</OtherCharge>
<TotalCharge>5.11</TotalCharge>
</Customer>
<Labels>
<Output>
<Type>1</Type>
<Format>1</Format>
<MimeType>image/png</MimeType>
<Content></Content>
</Output>
</Labels>
<PackageID>6544</PackageID>
<ShipperReference>REF0001</ShipperReference>
<ReceiverName>Mr President</ReceiverName>
<ReceiverPhone>202-456-1414</ReceiverPhone>
</Package>
</Packages>
<Carrier>1</Carrier>
<CarrierName>DHL</CarrierName>
<ServiceType>6</ServiceType>
<ServiceTypeName>Ground</ServiceTypeName>
<Weight>10.5</Weight>
<TransactionIdentifier>0123456789</TransactionIdentifier>
<ShipmentID>2461</ShipmentID>
</PierbridgeShipResponse>
Ship Programming Information 83
INTERNATIONAL
The following Xml ships an international package, which contains two different types of content.
A FedEx International Priority carrier service has been specified in this example.
Note that the Content elements (in the response XML) have an empty value; these elements, when they have a value, have a large base64-encoded string, which is omitted here for brevity.
XML Request
<?xml version="1.0" encoding="UTF-8"?>
<PierbridgeShipRequest>
<Carrier>3</Carrier>
<ServiceType>26</ServiceType>
<ShipDate></ShipDate>
<Receiver>
<CompanyName>Public Works and Government Services Canada</CompanyName>
<Street>Main Street</Street>
<City>Ottawa</City>
<Region>ON</Region>
<PostalCode>K1A 0S5</PostalCode>
<Country>CA</Country>
</Receiver>
<Packages>
<Package>
<ShipperReference>REF0002</ShipperReference>
<ReceiverName>Mr Minister</ReceiverName>
<ReceiverPhone>1-800-622-6232</ReceiverPhone>
<PackageType>11</PackageType>
<Weight>10.5</Weight>
<Length>8</Length>
<Width>8</Width>
<Height>8</Height>
<International>
<Contents>
<Content>
<Code>090122</Code>
<Quantity>2</Quantity>
<Value>200</Value>
<Weight>20</Weight>
<Description>shoes</Description>
<OriginCountry>MX</OriginCountry>
</Content>
<Content>
<Code>490199</Code>
<Quantity>100</Quantity>
<Value>26</Value>
<Weight>5</Weight>
<Description>books</Description>
<OriginCountry>US</OriginCountry>
</Content>
</Contents>
</International>
</Package>
</Packages>
<UserName>user</UserName>
</PierbridgeShipRequest>
XML Response
<?xml version="1.0" encoding="utf-8"?>
<PierbridgeShipResponse>
Ship Programming Information 84
<Shipping>
<ShippingCharge>81.00</ShippingCharge>
<AccessorialCharge>0.00</AccessorialCharge>
<OtherCharge>0.00</OtherCharge>
<TotalCharge>81.00</TotalCharge>
<CommitmentLevel>Not Specified</CommitmentLevel>
</Shipping>
<Customer>
<ShippingCharge>100.00</ShippingCharge>
<AccessorialCharge>0.00</AccessorialCharge>
<OtherCharge>0.00</OtherCharge>
<TotalCharge>100.00</TotalCharge>
<CommitmentLevel></CommitmentLevel>
</Customer>
<Packages>
<Package>
<Status>
<Code>1</Code>
<Description>Success</Description>
</Status>
<WayBillNumber>1Z42070X6698094772</WayBillNumber>
<Shipping>
<ShippingCharge>81</ShippingCharge>
<AccessorialCharge>0</AccessorialCharge>
<OtherCharge>0</OtherCharge>
<TotalCharge>81</TotalCharge>
</Shipping>
<Customer>
<ShippingCharge>100.00</ShippingCharge>
<AccessorialCharge>0.00</AccessorialCharge>
<OtherCharge>0.00</OtherCharge>
<TotalCharge>100.00</TotalCharge>
</Customer>
<Labels>
<Output>
<Type>1</Type>
<Format>1</Format>
<MimeType>image/gif</MimeType>
<Content></Content>
</Output>
</Labels>
<PackageID>6548</PackageID>
<ShipperReference>REF0002</ShipperReference>
<ReceiverName>Mr Minister</ReceiverName>
<ReceiverPhone>1-800-622-6232</ReceiverPhone>
</Package>
</Packages>
<Carrier>3</Carrier>
<ServiceType>26</ServiceType>
<Weight>10.5</Weight>
<Documents>
<Output>
<Type>5</Type>
<Format>7</Format>
<MimeType>image/tiff</MimeType>
<Content></Content>
</Output>
</Documents>
<ShipmentID>2465</ShipmentID>
</PierbridgeShipResponse>
Multipack Programming Information 85
MULTIPACK PROGRAMMING INFORMATION This interface allows you to add packages to the database, which enables multipack rating, rate shopping and shipping, i.e. rating or shipping of more than one package in a single shipment.
In the XML request you specify information such as the receiver, item detail such as weight and dimesions, and any special services required (e.g. collect-on-delivery or insurance).
The XML response will indicate whether your request has succeeded. If it hasn’t then an indication of what went wrong will be provided.
To process a multipack rate, rate shop or ship the relevant interface (Rate, Rate Shop or Ship) must be submitted with the ‘CloseShipment’ element set to ‘True’. When this element is set to ‘True’ the system searches for any previously added packages that meet all of the following criteria and includes them in the multipack rate, rate shop or ship:
Not previously been shipped;
Added by the same user;
Same first Address Line (element ‘Receiver/Street’);
Same Postal Code (element ‘Receiver/PostalCode’);
XML REQUEST
The request XML document must adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgePackageRequest Yes
One
Container Root element.
PierbridgePackageRequest/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgePackageRequest/
SaturdayDelivery
No
Zero or One
Boolean Indicates whether the shipment is to be delivered on a Saturday.
Omit the element if a Saturday delivery is not required, else set to ‘True’.
Most carriers levy an extra charge for this option.
PierbridgePackageRequest/
Packages
Yes
One
Container Parent element for packages elements.
Multipack Programming Information 86
PierbridgePackageRequest/
Packages/
Package
Yes
One
Container Parent element for a package element.
PierbridgePackageRequest/
Packages/
Package/
RecordIdentifiers
No
Zero or One
Container Parent element for Record Identifier elements at the package-level.
Record Identifiers allow you to associate zero or more key values with a package.
These are typically used to link a package to key values in external systems, e.g. a stock or sales database.
PierbridgePackageRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier
No
Zero or Many
Container Parent element for information about each Record Identifier.
Include one of these elements for each Record Identifier.
PierbridgePackageRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys
No
Zero or Many
Container Parent element for information about the Record Identifier’s keys.
PierbridgePackageRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key1
No
Zero or One
String First key value.
PierbridgePackageRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key2
No
Zero or One
String Second key value.
Multipack Programming Information 87
PierbridgePackageRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key3
No
Zero or One
String Third key value.
PierbridgePackageRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key4
No
Zero or One
String Fourth key value.
PierbridgePackageRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key5
No
Zero or One
String Fifth key value.
PierbridgePackageRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key6
No
Zero or One
String Sixth key value.
PierbridgePackageRequest/
Packages/
Package/
Outputs
No
Zero or One
Container Parent element for Output elements at
the package-level.
Output elements are used to modify (in a limited way) how the labels and documents are produced.
Multipack Programming Information 88
PierbridgePackageRequest/
Packages/
Package/
Outputs/
Output
No
Zero or Many
Container Parent element for information about each Output.
Include one of these elements for each Output.
PierbridgePackageRequest/
Packages/
Package/
Outputs/
Output/
OutputType
No
Zero or One
Integer The type of label or document.
If blank then all other settings in this block apply to all labels and documents.
See Appendix A for valid values.
PierbridgePackageRequest/
Packages/
Package/
Outputs/
Output/
Copies
No
Zero or One
Integer The number of copies of the label or document to produce.
PierbridgePackageRequest/
Packages/
Package/
Outputs/
Output/
Pieces
No
Zero or One
Integer The number of pieces (e.g. packages, pallets) to produce the label or document for.
E.g. if set to 2 then labels with '1 of 2' and '2 or 2' indicators will be produced.
PierbridgePackageRequest/
Packages/
Package/
Outputs/
Output/
PrinterID
No
Zero or One
Integer The numeric identifier of the printer to print the label or document to.
Must be a value from the Printers.[ID] column in the Pierbridge Shipment Server database.
PierbridgePackageRequest/
Packages/
Package/
Outputs/
Output/
PrintToClient
No
Zero or One
Boolean Indicates whether to print the label or document to the front-end.
Omit the element if the default printing method for the label or document is to be used, else set to ‘True’.
Multipack Programming Information 89
PierbridgePackageRequest/
Packages/
Package/
Copies
No
Zero or One
Integer Indicates the number of additional copies of the package that are to be shipped.
Defaults to zero additional copies if omitted.
PierbridgePackageRequest/
Packages/
Package/
ShipperReference
No
Zero or One
String The reference number that you want to associate with the package.
This value will appear on the package’s label.
PierbridgePackageRequest/
Packages/
Package/
ReferenceOne
No
Zero or One
String Can be used to associate a package with a reference number.
PierbridgePackageRequest/
Packages/
Package/
ReferenceTwo
No
Zero or One
String Can be used to associate a package with a reference number.
PierbridgePackageRequest/
Packages/
Package/
ReferenceThree
No
Zero or One
String Can be used to associate a package with a reference number.
PierbridgePackageRequest/
Packages/
Package/
Receiver
Yes
One
Container Parent element for Receiver address elements.
PierbridgePackageRequest/
Packages/
Package/
Receiver/
Name
Yes
One
String The name of the person the package is to be shipped to.
PierbridgePackageRequest/
Packages/
Package/
Receiver/
Phone
Yes
One
String The telephone number of the person the package is to be shipped to.
Multipack Programming Information 90
PierbridgePackageRequest/
Packages/
Package/
Receiver/
No
Zero or One
String The email address of the person the package is to be shipped to.
PierbridgePackageRequest/
Packages/
Package/
Receiver/
CompanyName
No
Zero or One
String The name of the company the shipment is to be shipped to.
PierbridgePackageRequest/
Packages/
Package/
Receiver/
Street
Yes
One
String The first line of the address the shipment is to be shipped to.
PierbridgePackageRequest/
Packages/
Package/
Receiver/
Locale
No
Zero or One
String The second line of the address the shipment is to be shipped to.
PierbridgePackageRequest/
Packages/
Package/
Receiver/
Other
No
Zero or One
String The third line of the address the shipment is to be shipped to.
PierbridgePackageRequest/
Packages/
Package/
Receiver/
City
Yes
One
String The city the shipment is to be shipped to.
PierbridgePackageRequest/
Packages/
Package/
Receiver/
Region
Yes
One
String The region the shipment is to be shipped to.
If in the US, the two-letter state code should be used, e.g. ‘MA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘Massachusetts’ or ‘Mass.’ into the required code.
Multipack Programming Information 91
PierbridgePackageRequest/
Packages/
Package/
Receiver/
PostalCode
Yes
One
String The postal or zip code the shipment is to be shipped to.
PierbridgePackageRequest/
Packages/
Package/
Receiver/
Country
Yes
One
String The country the shipment is to be shipped to.
The standard two-letter country codes should be used, e.g. ‘US’ or ‘CA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘USA’ or ‘United States’ into the required code.
PierbridgePackageRequest/
Packages/
Package/
Receiver/
Residential
No
Zero or One
Boolean Indicates whether the address to be shipped to is a residential one.
Omit the element if it is not a residential address, else set to ‘True’.
PierbridgePackageRequest/
Packages/
Package/
Weight
Yes
One
Float The weight of the package.
The units (e.g. pound or kilogram) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgePackageRequest/
Packages/
Package/
Length
No
Zero or One
Integer The length of the package.
The units (e.g. inch or centimeter) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgePackageRequest/
Packages/
Package/
Width
No
Zero or One
Integer The width of the package.
The units (e.g. inch or centimeter) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgePackageRequest/
Packages/
Package/
Height
No
Zero or One
Integer The height of the package.
The units (e.g. inch or centimeter) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgePackageRequest/
Packages/
Package/
ContentDescription
No
Zero or One
String The description of the package’s content.
This value will appear on the package’s label.
Multipack Programming Information 92
PierbridgePackageRequest/
Packages/
Package/
WayBillNumber
No
Zero or One
String The tracking number that is to be assigned to the package.
Used for carriers that do not auto-generate tracking numbers.
PierbridgePackageRequest/
Packages/
Package/
Insurance
No
Zero or One
Container Parent element for information about Insurance.
If insurance is not required for this package, then omit this element and its children.
PierbridgePackageRequest/
Packages/
Package/
Insurance/
Type
No
Zero or One
Integer This value should be set to ‘1’ if insurance is required.
PierbridgePackageRequest/
Packages/
Package/
Insurance/
Value
No
Zero or One
Float The value the package is to be insured
for.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgePackageRequest/
Packages/
Package/
COD
No
Zero or One
Container Parent element for information about Collect On Delivery (COD).
If COD is not required for this package, then omit this element and its children.
PierbridgePackageRequest/
Packages/
Package/
COD/
Type
No
Zero or One
Integer The numeric identifier for the type of Collect On Delivery.
See Appendix A for valid values.
PierbridgePackageRequest/
Packages/
Package/
COD/
Value
No
Zero or One
Float The value that is to be collected by the carrier when this package is delivered.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
Multipack Programming Information 93
PierbridgePackageRequest/
Packages/
Package/
Hold
No
Zero or One
Boolean Indicates whether the package should be held for collection at a carrier’s depot or some other location.
Omit this element if the package is not to be held, else set to ‘True’.
PierbridgePackageRequest/
Packages/
Package/
Holder
No
Zero or One
Container Parent element for information about the individual or organization who is to hold the package for collection.
If holder information is not required for this package, then omit this element and its children.
PierbridgePackageRequest/
Packages/
Package/
Holder/
Name
No
Zero or One
String The name of the individual who is to hold the package for collection.
PierbridgePackageRequest/
Packages/
Package/
Holder/
CompanyName
No
Zero or One
String The name of the company where the package is to be held for collection.
PierbridgePackageRequest/
Packages/
Package/
Holder/
Street
No
Zero or One
String The first line of the address where the package is to be held for collection.
PierbridgePackageRequest/
Packages/
Package/
Holder/
Locale
No
Zero or One
String The second line of the address where the
package is to be held for collection.
PierbridgePackageRequest/
Packages/
Package/
Holder/
Other
No
Zero or One
String The third line of the address where the package is to be held for collection.
Multipack Programming Information 94
PierbridgePackageRequest/
Packages/
Package/
Holder/
City
No
Zero or One
String The city where the package is to be held for collection.
PierbridgePackageRequest/
Packages/
Package/
Holder/
Region
No
Zero or One
String The region where the package is to be held for collection
If in the US, the two-letter state code should be used, e.g. ‘MA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘Massachusetts’ or ‘Mass.’ into the required code.
PierbridgePackageRequest/
Packages/
Package/
Holder/
PostalCode
No
Zero or One
String The postal or zip code where the package is to be held for collection.
PierbridgePackageRequest/
Packages/
Package/
Holder/
Country
No
Zero or One
String The country where the package is to be held for collection
The standard two-letter country codes should be used, e.g. ‘US’ or ‘CA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘USA’ or ‘United States’ into the required code.
PierbridgePackageRequest/
Packages/
Package/
Holder/
Phone
No
Zero or One
String The phone number of the individual who is to hold the package for collection.
PierbridgePackageRequest/
Packages/
Package/
AdditionalHandling
No
Zero of One
Boolean Indicates that extra handling measures are required when loading the package.
Omit this element if the package does not require additional handling, else set to ‘True’.
PierbridgePackageRequest/
Packages/
Package/
Oversize
No
Zero of One
Integer The numeric identifier for the package’s oversize status.
Omit this element if the package is not
oversize.
See Appendix A for valid values.
Multipack Programming Information 95
PierbridgePackageRequest/
Packages/
Package/
LargePackage
No
Zero of One
Boolean Indicates that this package has UPS ‘Large Package’ dimensions.
Omit this element if the package does not have UPS ‘Large Package’ dimensions, else set to ‘True’.
PierbridgePackageRequest/
Packages/
Package/
DeliveryConfirmation
No
Zero of One
Integer The numeric identifier for the type of delivery confirmation required for this package.
Omit this element if the delivery confirmation is not required.
See Appendix A for valid values.
PierbridgePackageRequest/
Packages/
Package/
FreightClass
No
Zero of One
String The freight class of the package.
Used when LTL shipping.
PierbridgePackageRequest/
Packages/
Package/
NMFC
No
Zero of One
String The National Motor Freight Classification of the package.
Used when LTL shipping.
PierbridgeShipRequest/
Packages/
Package/
ItemsOnPallet
No
Zero of One
Integer The number of items on a pallet.
Used when LTL shipping, where the Package can be treated as a pallet.
PierbridgePackageRequest/
Packages/
Package/
InsidePickup
No
Zero of One
Boolean Indicates that the package is to be picked up inside.
Omit this element if inside pickup is not required, else set to ‘True’.
PierbridgePackageRequest/
Packages/
Package/
InsideDelivery
No
Zero of One
Boolean Indicates that the package is to be delivered inside.
Omit this element if inside delivery is not required, else set to ‘True’
PierbridgePackageRequest/
Packages/
Package/
NonStandardContainer
No
Zero of One
Boolean Indicates that the package is a non-standard container.
Omit this element if the package is in a standard container, else set to ‘True’.
Multipack Programming Information 96
PierbridgePackageRequest/
Packages/
Package/
EmailNotification
No
Zero of One
Boolean Indicates that email notification of the package’s delivery is required.
The value in element ReceiverEmail must be provided if this value is set to ‘True’.
Omit this element if email notification is
not required, else set to ‘True’.
PierbridgePackageRequest/
Packages/
Package/
International
No
Zero or One
Container Parent element for information about the international aspects of the package.
If international shipping is not being performed then this element should be omitted.
PierbridgePackageRequest/
Packages/
Package/
International/
DocumentsOnly
No
Zero or One
Boolean Indicates whether the package contains only documents.
Omit this element if the package contains items other than documents.
If this element has a value of ‘True’ then the following Contents element is not required.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents
No
Zero or One
Container Parent element for information about the package’s contents.
If the package contains only documents then this element and its children can be omitted.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content
No
Zero or Many
Container Parent element for information about each Content item.
Include one of these elements for each Content item.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
RecordIdentifiers
No
Zero or One
Container Parent element for Record Identifier elements at the content-level.
Record Identifiers allow you to associate zero or more key values with a content item.
These are typically used to link a content item to key values in external systems, e.g. a stock or sales database.
Multipack Programming Information 97
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
RecordIdentifiers/
RecordIdentifier
No
Zero or Many
Container Parent element for information about each Record Identifier.
Include one of these elements for each Record Identifier.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
RecordIdentifiers/
RecordIdentifier/
Keys
No
Zero or Many
Container Parent element for information about the Record Identifier’s keys.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key1
No
Zero or One
String First key value.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key2
No
Zero or One
String Second key value.
Multipack Programming Information 98
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key3
No
Zero or One
String Third key value.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key4
No
Zero or One
String Fourth key value.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key5
No
Zero or One
String Fifth key value.
Multipack Programming Information 99
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key6
No
Zero or One
String Sixth key value.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
Code
No
Zero or One
String The Harmonized, or Schedule-B, code for the item.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
Quantity
No
Zero or One
Integer The number of items of this content type that are in this package.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
OrderedQuantity
No
Zero or One
Integer The number of items of this content type that were ordered.
Multipack Programming Information 100
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
BackOrderedQuantity
No
Zero or One
Integer The number of items of this content type that are on back order.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
Value
No
Zero or One
Float The value of a single items.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
Weight
No
Zero or One
Float The weight of a single item.
The units (e.g. pound or kilogram) are determined by the configuration of the
Pierbridge Shipment Server.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
Description
No
Zero or One
String The description of the item.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
OriginCountry
No
Zero or One
String The country the item originated from.
Multipack Programming Information 101
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
PurchaseOrderNumber
No
Zero or One
String Receiver’s purchase order number.
Printed on shipping documentation.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
SalesOrderNumber
No
Zero or One
String Your sales order number.
Printed on shipping documentation.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
ItemCode
No
Zero or One
String Any other code associated with the item.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
ItemDescription
No
Zero or One
String Any other description for the item.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
CustomerCode
No
Zero or One
String The customer’s code for the item.
Multipack Programming Information 102
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
PartNumber
No
Zero or One
String The part number of the item.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
BinNumber
No
Zero or One
String The bin number of the item.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
LotNumber
No
Zero or One
String The lot number of the item.
PierbridgePackageRequest/
Packages/
Package/
International/
Contents/
Content/
SerialNumber
No
Zero or One
String The serial number of the item.
PierbridgePackageRequest/
UserName
Yes
One
String The Windows username of the user who is
submitting the request.
Multipack Programming Information 103
XML RESPONSE
After the above XML request has been POSTed on the HTTP connection an XML response will be returned, which will adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgePackageResponse Yes
One
Container Root element.
PierbridgePackageResponse/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgePackageResponse/
Packages
Yes
One
Container Parent element for packages elements.
PierbridgePackageResponse/
Packages/
Package
Yes
One
Container Parent element for a package element.
PierbridgePackageResponse/
Packages/
Package/
Status
Yes
One
Container Parent element for package status elements.
PierbridgePackageResponse/
Packages/
Package/
Status/
Code
Yes
One
Integer Indicates whether the package has been successfully voided.
A value of ‘0’ indicates failure and ‘1’ indicates success.
PierbridgePackageResponse/
Packages/
Package/
Status/
Description
Yes
One
String A textual description of the package’s
success.
If the package has failed, then the value will summarise why it failed.
Multipack Programming Information 104
PierbridgePackageResponse/
Packages/
Package/
ShipperReference
No
Zero or One
String The reference number that you associated with the package in the request.
This value will appear on the package’s label.
PierbridgePackageResponse/
Packages/
Package/
PackageID
Yes
One
Integer A unique numeric identifier for the package.
Multipack Programming Information 105
BASIC PACKAGE
The following XML adds a package. This represents the minimum information that is typically provided for package addition.
XML Request
<?xml version="1.0" encoding="UTF-8"?>
<PierbridgePackageRequest>
<Packages>
<Package>
<Receiver>
<Name>Mr President</Name>
<Phone>202-456-1414</Phone>
<Street>1600 Pennsylvania Avenue NW</Street>
<City>Washington</City>
<Region>DC</Region>
<PostalCode>20500</PostalCode>
<Country>US</Country>
</Receiver>
<Weight>25.0</Weight>
</Package>
</Packages>
<UserName>user</UserName>
</PierbridgePackageRequest>
XML Response
<?xml version="1.0" encoding="utf-8"?>
<PierbridgePackageResponse>
<Packages>
<Package>
<Status>
<Code>1</Code>
<Description>Package store successful.</Description>
</Status>
<ShipperReference>REF0003</ShipperReference>
<PackageID>1234</PackageID>
</Package>
</Packages>
</PierbridgePackageResponse>
Multipack Shipping Programming Information 106
INTERNATIONAL
The following Xml adds an international package, which contains two different types of content.
XML Request
<?xml version="1.0" encoding="UTF-8"?>
<PierbridgePackageRequest>
<Packages>
<Package>
<ShipperReference>REF0004</ShipperReference>
<Receiver>
<Name>Mr Minister</Name>
<Phone>1-800-622-6232</Phone>
<CompanyName>Public Works and Government Services Canada</CompanyName>
<Street>Main Street</Street>
<City>Ottawa</City>
<Region>Ontario</Region>
<PostalCode>K1A 0S5</PostalCode>
<Country>CA</Country>
</Receiver>
<Weight>12.2</Weight>
<Length>9</Length>
<Width>8</Width>
<Height>8</Height>
<International>
<Contents>
<Content>
<Code>090122</Code>
<Quantity>2</Quantity>
<Value>200</Value>
<Weight>20</Weight>
<Description>shoes</Description>
<OriginCountry>MX</OriginCountry>
</Content>
<Content>
<Code>490199</Code>
<Quantity>100</Quantity>
<Value>26</Value>
<Weight>5</Weight>
<Description>books</Description>
<OriginCountry>US</OriginCountry>
</Content>
</Contents>
</International>
</Package>
</Packages>
<UserName>user</UserName>
</PierbridgePackageRequest>
XML Response
<?xml version="1.0" encoding="utf-8"?>
<PierbridgePackageResponse>
<Packages>
<Package>
<Status>
<Code>1</Code>
<Description>Package store successful.</Description>
</Status>
<ShipperReference>REF0004</ShipperReference>
<PackageID>1235</PackageID>
</Package>
Multipack Shipping Programming Information 107
</Packages>
</PierbridgePackageResponse>
Clear Package Programming Information 108
CLEAR PACKAGE PROGRAMMING INFORMATION This interface allows you to clear packages from the system that have not yet been shipped.
It should be used when packages in the system have been found to contain errors when they are submitted for a multipack ship. It will clear all un-shipped packages in the system that have been added by the user that calls it.
In the XML request you specify only an optional transaction identifier.
The XML response will indicate whether your request has succeeded. If it hasn’t then an indication of what went wrong will be provided.
XML REQUEST
The request XML document must adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeClearPackageRequest Yes
One
Container Root element.
PierbridgeClearPackageRequest/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeClearPackageRequest/
UserName
Yes
One
String The Windows username of the user who is submitting the request.
Clear Package Programming Information 109
XML RESPONSE
After the above XML request has been POSTed on the HTTP connection an XML response will be returned, which will adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeClearPackageResponse Yes
One
Container Root element.
PierbridgeClearPackageResponse/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeClearPackageResponse/
Status
Yes
One
Container Parent element for status elements.
PierbridgeClearPackageResponse/
Status/
Code
Yes
One
Integer Indicates whether the packages have been successfully cleared.
A value of ‘0’ indicates failure and ‘1’ indicates success.
PierbridgeClearPackageResponse/
Status/
Description
Yes
One
String A textual description of the transaction’s success.
If the transaction has failed, then the value will summarise why it failed.
Clear Package Programming Information 110
BASIC PACKAGE
The following XML clears all un-shipped packages for the user that submits it. This represents the information that is typically provided for package clearing.
XML Request
<?xml version="1.0" encoding="UTF-8"?>
<PierbridgeClearPackageRequest>
<UserName>user</UserName>
</PierbridgeClearPackageRequest>
XML Response
<?xml version="1.0" encoding="utf-8"?>
<PierbridgeClearPackageResponse>
<Status>
<Code>1</Code>
<Description>Packages cleared successfully.</Description>
</Status>
</PierbridgeClearPackageResponse>
Void Programming Information 111
VOID PROGRAMMING INFORMATION This interface allows you to void packages that have been previously shipped.
In the XML request you specify the shipment identifier, the package identifier or package tracking number.
The XML response will indicate whether your request has succeeded. If it hasn’t then an indication of what went wrong will be provided.
For multipack shipping the shipment identifier should be used so that all packages in the shipment are voided. Alternatively, each package can be individually voided using the package identifier or package tracking number.
XML REQUEST
The request XML document must adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeVoidRequest Yes
One
Container Root element.
PierbridgeVoidRequest/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeVoidRequest/
Live
No
Zero or One
Boolean Indicates whether the void is a test or not.
Omit the element if the void is a test one, else set to ‘True’.
PierbridgeVoidRequest/
ShipmentID
No*
Zero or One
Integer The ID of the shipment to void.
Must be a value from the Shipments.[ID] column in the Pierbridge Shipment Server database.
* Either this element, PackageID or WayBillNumber must be provided.
PierbridgeVoidRequest/
Packages
Yes
One
Container Parent element for packages elements.
PierbridgeVoidRequest/
Packages/
Package
Yes
One
Container Parent element for a package element.
Void Programming Information 112
PierbridgeVoidRequest/
Packages/
Package/
WayBillNumber
No*
Zero or One
String The tracking number of the package to void.
This is the value that is returned in a PierbridgeShipResponse.
* Either this element, ShipmentID or
PackageID must be provided.
PierbridgeVoidRequest/
Packages/
Package/
PackageID
No*
Zero or One
Integer The ID of the package to void.
Must be a value from the Packages.[ID] column in the Pierbridge Shipment Server database.
* Either this element, ShipmentID or WayBillNumber must be provided.
PierbridgeVoidRequest/
UserName
Yes
One
String The Windows username of the user who is submitting the request.
Void Programming Information 113
XML RESPONSE
After the above XML request has been POSTed on the HTTP connection an XML response will be returned, which will adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeVoidResponse Yes
One
Container Root element.
PierbridgeVoidResponse/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeVoidResponse/
Packages
Yes
One
Container Parent element for packages elements.
PierbridgeVoidResponse/
Packages/
Package
Yes
One
Container Parent element for package elements.
PierbridgeVoidResponse/
Packages/
Package/
Status
Yes
One
Container Parent element for package status elements.
PierbridgeVoidResponse/
Packages/
Package/
Status/
Code
Yes
One
Integer Indicates whether the package has been successfully stored.
A value of ‘0’ indicates failure and ‘1’ indicates success.
PierbridgeVoidResponse/
Packages/
Package/
Status/
Description
Yes
One
String A textual description of the package’s
success.
If the package has failed, then the value will summarise why it failed.
Void Programming Information 114
BASIC PACKAGE
The following XML voids a package, identifying it via it’s waybill number.
XML Request
<?xml version="1.0" encoding="UTF-8"?>
<PierbridgeVoidRequest>
<Packages>
<Package>
<WayBillNumber>28652713950</WayBillNumber>
</Package>
</Packages>
<UserName>user</UserName>
</PierbridgeVoidRequest>
XML Response
<?xml version="1.0" encoding="utf-8"?>
<PierbridgeVoidResponse>
<Packages>
<Package>
<Status>
<Code>1</Code>
<Description>Void successful.</Description>
</Status>
<WayBillNumber>28652713950</WayBillNumber>
</Package>
</Packages>
</PierbridgeVoidResponse>
Track Programming Information 115
TRACK PROGRAMMING INFORMATION This interface allows you to track packages that have been previously shipped.
In the XML request you specify the package’s tracking number.
The XML response will indicate whether your request has succeeded. If it hasn’t then an indication of what went wrong will be provided. If it was successful then information such as geographic locations the package has passed through and the date and time it was at those locations will be returned.
XML REQUEST
The request XML document must adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeTrackRequest Yes
One
Container Root element.
PierbridgeTrackRequest/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeTrackRequest/
Live
No
Zero or One
Boolean Indicates whether the track is a test or not.
Omit the element if the void is a test one, else set to ‘True’.
PierbridgeTrackRequest/
Packages
Yes
One
Container Parent element for packages elements.
PierbridgeTrackRequest/
Packages/
Package
Yes
One
Container Parent element for a package element.
PierbridgeTrackRequest/
Packages/
Package/
WayBillNumber
No*
Zero or One
String The tracking number of the package to track.
This is the value that is returned in a PierbridgeShipResponse.
* Either this element or the PackageID element must be provided.
Track Programming Information 116
PierbridgeTrackRequest/
Packages/
Package/
PackageID
No*
Zero or One
Integer The ID of the package to track.
This is the value that is returned in a PierbridgeShipResponse.
* Either this element or the WayBillNumber element must be
provided.
PierbridgeTrackRequest/
UserName
Yes
One
String The Windows username of the user who is submitting the request.
Track Programming Information 117
XML RESPONSE
After the above XML request has been POSTed on the HTTP connection an XML response will be returned, which will adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeTrackResponse Yes
One
Container Root element.
PierbridgeTrackResponse/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeTrackResponse/
Packages
Yes
One
Container Parent element for packages elements.
PierbridgeTrackResponse/
Packages/
Package
Yes
One
Container Parent element for a package element.
PierbridgeTrackResponse/
Packages/
Package/
Status
Yes
One
Container Parent element for package status elements.
PierbridgeTrackResponse/
Packages/
Package/
Status/
Code
Yes
One
Integer Indicates whether the package has been successfully stored.
A value of ‘0’ indicates failure and ‘1’ indicates success.
PierbridgeTrackResponse/
Packages/
Package/
Status/
Description
Yes
One
String A textual description of the package’s
success.
If the package has failed, then the value will summarise why it failed.
Track Programming Information 118
PierbridgeTrackResponse/
Packages/
Package/
History
Yes
One
Container Parent element for history elements.
PierbridgeTrackResponse/
Packages/
Package/
History/
TrackStatus
No
Zero or More
Container Parent element for track status elements.
There will be one of these elements for each occasion that the package has been scanned during its transportation.
PierbridgeTrackResponse/
Packages/
Package/
History/
TrackStatus/
ID
No
Zero or One
Integer The numeric identifier of the package’s track status.
See Appendix A for valid values.
PierbridgeTrackResponse/
Packages/
Package/
History/
TrackStatus/
Description
No
Zero or One
String The description of the package’s track status.
PierbridgeTrackResponse/
Packages/
Package/
History/
TrackStatus/
Location
No
Zero or One
String The location the package was at.
PierbridgeTrackResponse/
Packages/
Package/
History/
TrackStatus/
Date
No
Zero or One
Date The date the package was at the location.
Track Programming Information 119
PierbridgeTrackResponse/
Packages/
Package/
History/
TrackStatus/
Time
No
Zero or One
Time The time the package was at the location.
Track Programming Information 120
BASIC PACKAGE
The following XML tracks a package, identifying it via it’s waybill number.
XML Request
<?xml version="1.0" encoding="UTF-8"?>
<PierbridgeTrackRequest>
<Packages>
<Package>
<WayBillNumber>790513236306</WayBillNumber>
</Package>
</Packages>
<UserName>user</UserName>
<PierbridgeTrackRequest>
XML Response
<?xml version="1.0" encoding="utf-8"?>
<PierbridgeTrackResponse>
<Packages>
<Package>
<Status>
<Code>1</Code>
<Description>Success</Description>
</Status>
<History>
<TrackStatus>
<ID>3</ID>
<Description>Delivered</Description>
<Date>2005-05-16</Date>
<Time>10:02</Time>
</TrackStatus>
</History>
</Package>
</Packages>
<PierbridgeTrackResponse>
Server Configuration Programming Information 121
SERVER CONFIGURATION PROGRAMMING INFORMATION This interface allows you to inspect certain aspects to the Shipment Server’s configuration.
In the XML request you specify a username and an optional transaction identifier.
The XML response will contain much of the information that is in Appendix A of this document.
XML REQUEST
The request XML document must adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeServerConfigRequest Yes
One
Container Root element.
PierbridgeServerConfigRequest/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeServerConfigRequest/
UserName
Yes
One
String The Windows username of the user who is submitting the request.
Server Configuration Programming Information 122
XML RESPONSE
After the above XML request has been POSTed on the HTTP connection an XML response will be returned, which will adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeServerConfigResponse Yes
One
Container Root element.
PierbridgeServerConfigResponse/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeServerConfigResponse/
Carriers
Yes
One
Container Parent element for carriers elements.
PierbridgeServerConfigResponse/
Carriers/
Carrier
No
Zero or Many
Container Parent element for carrier elements.
PierbridgeServerConfigResponse/
Carriers/
Carrier/
ID
No
Zero or One
Integer The numeric identifier of the carrier.
PierbridgeServerConfigResponse/
Carriers/
Carrier/
Description
No
Zero or One
String A textual description of the carrier.
PierbridgeServerConfigResponse/
Carriers/
Carrier/
Services
No
Zero or One
Container Parent element for carrier services elements.
PierbridgeServerConfigResponse/
Carriers/
Carrier/
Services/
Service
No
Zero or Many
Container Parent element for carrier service elements.
Server Configuration Programming Information 123
PierbridgeServerConfigResponse/
Carriers/
Carrier/
Services/
Service/
ID
No
Zero or One
Integer The numeric identifier for the carrier service.
PierbridgeServerConfigResponse/
Carriers/
Carrier/
Services/
Service/
Description
No
Zero or One
String A textual description of the carrier service.
PierbridgeServerConfigResponse/
Carriers/
Carrier/
Packages
No
Zero or One
Container Parent element for carrier packages elements.
PierbridgeServerConfigResponse/
Carriers/
Carrier/
Packages/
Package
No
Zero or Many
Container Parent element for carrier package elements.
PierbridgeServerConfigResponse/
Carriers/
Carrier/
Packages/
Package/
ID
No
Zero or One
Integer The numeric identifier of the carrier package.
PierbridgeServerConfigResponse/
Carriers/
Carrier/
Packages/
Package/
Description
No
Zero or One
String A textual description of the carrier package.
PierbridgeServerConfigResponse/
Outputs
Yes
One
Container Parent element for outputs elements.
Server Configuration Programming Information 124
PierbridgeServerConfigResponse/
Outputs/
Types
Yes
One
Container Parent element for output types elements.
PierbridgeServerConfigResponse/
Outputs/
Types/
Type
No
Zero or Many
Container Parent element for output type elements.
PierbridgeServerConfigResponse/
Outputs/
Types/
Type/
ID
No
Zero or One
Integer The numeric identifier of the output type.
PierbridgeServerConfigResponse/
Outputs/
Types/
Type/
Description
No
Zero or One
String A textual description of the output type.
PierbridgeServerConfigResponse/
Outputs/
Formats
Yes
One
Container Parent element for output formats elements.
PierbridgeServerConfigResponse/
Outputs/
Formats/
Format
No
Zero or Many
Container Parent element for output format elements.
PierbridgeServerConfigResponse/
Outputs/
Formats/
Format/
ID
No
Zero or One
Integer The numeric identifier of the output format.
PierbridgeServerConfigResponse/
Outputs/
Formats/
Format/
Description
No
Zero or One
String A textual description of the output format.
Server Configuration Programming Information 125
PierbridgeServerConfigResponse/
Payers
Yes
One
Container Parent element for payers elements.
PierbridgeServerConfigResponse/
Payers/
Payer
No
Zero or Many
Container Parent element for payer elements.
PierbridgeServerConfigResponse/
Payers/
Payer/
ID
No
Zero or One
Integer The numeric identifier for the payer.
PierbridgeServerConfigResponse/
Payers/
Payer/
Description
No
Zero or One
String A textual description of the payer.
PierbridgeServerConfigResponse/
TermsOfSales
Yes
One
Container Parent element for terms of sales elements.
PierbridgeServerConfigResponse/
TermsOfSales/
TermOfSale
No
Zero or Many
Container Parent element for terms of sale elements.
PierbridgeServerConfigResponse/
TermsOfSales/
TermOfSale/
ID
No
Zero or One
Integer The numeric identifier of the terms of sale.
PierbridgeServerConfigResponse/
TermsOfSales/
TermOfSale/
Description
No
Zero or One
String A textual description of the terms of sale.
PierbridgeServerConfigResponse/
CODs
Yes
One
Container Parent element for Collect-on-delivery (CODs) elements.
PierbridgeServerConfigResponse/
CODs/
COD
No
Zero or Many
Container Parent element for Collect-on-delivery (COD) elements.
Server Configuration Programming Information 126
PierbridgeServerConfigResponse/
CODs/
COD/
ID
No
Zero or One
Integer The numeric identifier of the Collect-on-delivery (COD).
PierbridgeServerConfigResponse/
CODs/
COD/
Description
No
Zero or One
String A textual description of the Collect-on-delivery (COD).
PierbridgeServerConfigResponse/
Oversizes
Yes
One
Container Parent element for oversizes elements.
PierbridgeServerConfigResponse/
Oversizes/
Oversize
No
Zero or Many
Container Parent element for oversize elements.
PierbridgeServerConfigResponse/
Oversizes/
Oversize/
ID
No
Zero or One
Integer The numeric identifier of the oversize.
PierbridgeServerConfigResponse/
Oversizes/
Oversize/
Description
No
Zero or One
String A textual description of the oversize.
PierbridgeServerConfigResponse/
DeliveryConfirmations
Yes
One
Container Parent element for delivery confirmations elements.
PierbridgeServerConfigResponse/
DeliveryConfirmations/
DeliveryConfirmation
No
Zero or Many
Container Parent element for delivery confirmation elements.
PierbridgeServerConfigResponse/
DeliveryConfirmations/
DeliveryConfirmation/
ID
No
Zero or One
Integer The numeric identifier of the delivery confirmation.
PierbridgeServerConfigResponse/
DeliveryConfirmations/
DeliveryConfirmation/
Description
No
Zero or One
String A textual description of the delivery confirmation.
Server Configuration Programming Information 127
PierbridgeServerConfigResponse/
HistoryStates
Yes
One
Container Parent element for history states elements.
PierbridgeServerConfigResponse/
HistoryStates/
HistoryState
No
Zero or Many
Container Parent element for history state elements.
PierbridgeServerConfigResponse/
HistoryStates/
HistoryState/
ID
No
Zero or One
Integer The numeric identifier of the history state.
PierbridgeServerConfigResponse/
HistoryStates/
HistoryState/
Description
No
Zero or One
String A textual description of the history state.
PierbridgeServerConfigResponse/
RateGroups
Yes
One
Container Parent element for rate groups elements.
PierbridgeServerConfigResponse/
RateGroups/
RateGroup
No
Zero or Many
Container Parent element for rate group elements.
PierbridgeServerConfigResponse/
RateGroups/
RateGroup/
ID
No
Zero or One
Integer The numeric identifier of the rate group.
PierbridgeServerConfigResponse/
RateGroups/
RateGroup/
Description
No
Zero or One
String A textual description of the rate group.
Server Configuration Programming Information 128
EXAMPLE
The following XML requests the server’s configuration information. This is all the information that can be provided.
For brevity, only one of the many carriers that would be in the response are shown below.
XML Request
<?xml version="1.0" encoding="UTF-8"?>
<PierbridgeServerConfigRequest>
<UserName>user</UserName>
</PierbridgeServerConfigRequest>
XML Response
<?xml version="1.0" encoding="UTF-8"?>
<PierbridgeServerConfigResponse>
<Carriers>
<Carrier>
<ID>1</ID>
<Description>Airborne</Description>
<Services>
<Service>
<ID>1</ID>
<Description>Express</Description>
</Service>
<Service>
<ID>2</ID>
<Description>Express 10:30</Description>
</Service>
<Service>
<ID>3</ID>
<Description>Express Saturday</Description>
</Service>
<Service>
<ID>4</ID>
<Description>Next Afternoon</Description>
</Service>
<Service>
<ID>5</ID>
<Description>Second Day Service</Description>
</Service>
<Service>
<ID>6</ID>
<Description>Ground</Description>
</Service>
</Services>
<Packages>
<Package>
<ID>1</ID>
<Description>Letter</Description>
</Package>
<Package>
<ID>2</ID>
<Description>Package</Description>
</Package>
</Packages>
</Carrier>
</Carriers>
<Outputs>
<Types>
<Type>
Server Configuration Programming Information 129
<ID>1</ID>
<Description>Label</Description>
</Type>
<Type>
<ID>2</ID>
<Description>Proof Of Delivery</Description>
</Type>
<Type>
<ID>3</ID>
<Description>COD Label</Description>
</Type>
<Type>
<ID>4</ID>
<Description>Return Label</Description>
</Type>
<Type>
<ID>5</ID>
<Description>Commercial Invoice</Description>
</Type>
<Type>
<ID>6</ID>
<Description>Certificate Of Origin</Description>
</Type>
<Type>
<ID>7</ID>
<Description>NAFTA Certificate Of Origin</Description>
</Type>
<Type>
<ID>8</ID>
<Description>SED</Description>
</Type>
<Type>
<ID>9</ID>
<Description>Placeholder Label</Description>
</Type>
<Type>
<ID>10</ID>
<Description>Manifest</Description>
</Type>
<Type>
<ID>11</ID>
<Description>License Plate</Description>
</Type>
<Type>
<ID>12</ID>
<Description>Manual Ship Information</Description>
</Type>
<Type>
<ID>13</ID>
<Description>International Label 1</Description>
</Type>
<Type>
<ID>14</ID>
<Description>International Label 2</Description>
</Type>
<Type>
<ID>15</ID>
<Description>No Wood Packaging</Description>
</Type>
<Type>
<ID>16</ID>
<Description>Wood Packaging</Description>
</Type>
<Type>
<ID>17</ID>
<Description>Bill of Lading</Description>
</Type>
<Type>
<ID>18</ID>
<Description>International Signature Label</Description>
</Type>
<Type>
<ID>19</ID>
<Description>Pack Slip</Description>
</Type>
<Type>
Server Configuration Programming Information 130
<ID>20</ID>
<Description>Mock Invoice</Description>
</Type>
<Type>
<ID>21</ID>
<Description>Bill of Lading (No charges)</Description>
</Type>
</Types>
<Formats>
<Format>
<ID>1</ID>
<Description>Image</Description>
</Format>
<Format>
<ID>2</ID>
<Description>Eltron</Description>
</Format>
<Format>
<ID>3</ID>
<Description>Zebra</Description>
</Format>
<Format>
<ID>4</ID>
<Description>Unimark</Description>
</Format>
<Format>
<ID>5</ID>
<Description>Windows</Description>
</Format>
<Format>
<ID>6</ID>
<Description>Crystal Reports</Description>
</Format>
<Format>
<ID>7</ID>
<Description>ActiveReports</Description>
</Format>
<Format>
<ID>8</ID>
<Description>BarTender</Description>
</Format>
<Format>
<ID>9</ID>
<Description>Pierbridge</Description>
</Format>
<Format>
<ID>10</ID>
<Description>Loftware</Description>
</Format>
</Formats>
</Outputs>
<Payers>
<Payer>
<ID>1</ID>
<Description>Sender</Description>
</Payer>
<Payer>
<ID>2</ID>
<Description>Recipient</Description>
</Payer>
<Payer>
<ID>3</ID>
<Description>Third Party</Description>
</Payer>
<Payer>
<ID>4</ID>
<Description>Consignee</Description>
</Payer>
<Payer>
<ID>5</ID>
<Description>Invoice</Description>
</Payer>
</Payers>
<TermsOfSales>
<TermsOfSale>
<ID>1</ID>
Server Configuration Programming Information 131
<Description>Free On Board (FOB)</Description>
</TermsOfSale>
<TermsOfSale>
<ID>2</ID>
<Description>Free Carrier (FCA)</Description>
</TermsOfSale>
<TermsOfSale>
<ID>3</ID>
<Description>Cost, Insurance, and Freight paid (CIF)</Description>
</TermsOfSale>
<TermsOfSale>
<ID>4</ID>
<Description>Carriage and Insurance Paid (CIP)</Description>
</TermsOfSale>
<TermsOfSale>
<ID>5</ID>
<Description>Cost and Freight (CFR)</Description>
</TermsOfSale>
<TermsOfSale>
<ID>6</ID>
<Description>Carriage Paid To (CPT)</Description>
</TermsOfSale>
<TermsOfSale>
<ID>7</ID>
<Description>Ex Works (EXW)</Description>
</TermsOfSale>
<TermsOfSale>
<ID>8</ID>
<Description>Delivered Duty Unpaid (DDU)</Description>
</TermsOfSale>
<TermsOfSale>
<ID>9</ID>
<Description>Delivered Duty Paid (DDP)</Description>
</TermsOfSale>
</TermsOfSales>
<CODs>
<COD>
<ID>1</ID>
<Description>Non-Guaranteed funds</Description>
</COD>
<COD>
<ID>2</ID>
<Description>Guaranteed funds</Description>
</COD>
</CODs>
<Oversizes>
<Oversize>
<ID>1</ID>
<Description>Oversize 1</Description>
</Oversize>
<Oversize>
<ID>2</ID>
<Description>Oversize 2</Description>
</Oversize>
<Oversize>
<ID>3</ID>
<Description>Oversize 3</Description>
</Oversize>
</Oversizes>
<DeliveryConfirmations>
<DeliveryConfirmation>
<ID>1</ID>
<Description>No signature</Description>
</DeliveryConfirmation>
<DeliveryConfirmation>
<ID>2</ID>
<Description>Signature required</Description>
</DeliveryConfirmation>
<DeliveryConfirmation>
<ID>3</ID>
<Description>Adult signature required</Description>
</DeliveryConfirmation>
</DeliveryConfirmations>
<HistoryStates>
<HistoryState>
<ID>1</ID>
Server Configuration Programming Information 132
<Description>Printed</Description>
</HistoryState>
<HistoryState>
<ID>2</ID>
<Description>Shipped </Description>
</HistoryState>
<HistoryState>
<ID>3</ID>
<Description>Delivered</Description>
</HistoryState>
<HistoryState>
<ID>4</ID>
<Description>Voided</Description>
</HistoryState>
</HistoryStates>
<RateGroups>
<RateGroup>
<ID>1</ID>
<Description>Domestic Express</Description>
</RateGroup>
<RateGroup>
<ID>2</ID>
<Description>International Express</Description>
</RateGroup>
</RateGroups>
</PierbridgeServerConfigResponse>
Print Programming Information 133
PRINT PROGRAMMING INFORMATION This interface allows you to re-print shipping-related labels and documentation.
In the XML request you specify the type of label or documentation to print and identify the shipment or package to print the label or documentation for.
Although the XML request allows you to specify what to print it offers only limited support for specifying how to print, which is set up using the AgileElite configuration tool. In effect, the XML request allows you to override a small number of these configuration settings.
The XML response will indicate whether your request has succeeded. If it hasn’t then an indication of what went wrong will be provided. If it was successful then data about the item(s) printed may be returned in the XML response if such data was requested or configured to be returned.
It is noteworthy that you can only re-print the labels and documentation that were generated when the shipment and package was first generated.
XML REQUEST
The request XML document must adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgePrintRequest Yes
One
Container Root element.
PierbridgePrintRequest/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgePrintRequest/
OutputType
No
Zero or One
Integer Type of output to print, e.g. Return
Label, SED, Bill of Lading, Pack Slip.
See Appendix A for valid values.
* Either this element or OutputBaseType must be provided.
Print Programming Information 134
PierbridgePrintRequest/
OutputBaseType
No
Zero or One
Integer Category of output to print.
Each output type is a member of a category. E.g. category ‘General Document’ contains types ‘High Value Report’ and ‘Pack Slip’.
Printing a category will print all the output types in that category.
See Appendix A for valid values.
* Either this element or OutputType must be provided.
PierbridgePrintRequest/
Carrier
No
Zero or One
Integer The numeric identifier of the carrier to print end-of-day documentation for.
Only used for end-of-day documentation.
Must be used in conjunction with the ShipDate element.
See Appendix A for valid values.
PierbridgePrintRequest/
ShipDate
No
Zero or One
Date The date to print end-of-day
documentation for.
Only used for end-of-day documentation.
Must be used in conjunction with the Carrier element.
PierbridgePrintRequest/
PackageID
No
Zero or One
Integer The unique numeric identifier of the package to print labels for.
PierbridgePrintRequest/
WayBillNumber
No
Zero or One
String The tracking number of the package to print labels for.
Can be used instead of element PackageID to identify a package. However, using PackageID is the preferred method.
PierbridgePrintRequest/
ShipmentID
No
Zero or One
Integer The unique numeric identifier of the shipment to print documentation for.
PierbridgePrintRequest/
PendingID
No
Zero or One
Integer The unique numeric identifier of the pending item to print labels for.
PierbridgePrintRequest/
ShipmentRequisitionID
No
Zero or One
Integer The unique numeric identifier of the shipment requisition to print documentation for.
PierbridgePrintRequest/
PackItemID
No
Zero or One
Integer The unique numeric identifier of the pack item to print labels for.
PierbridgePrintRequest/
ContentID
No
Zero or One
Integer The unique numeric identifier of the content item to print documentation for.
Print Programming Information 135
PierbridgePrintRequest/
CustomerID
No
Zero or One
Integer The unique numeric identifier of the customer that labels are being printed for.
Allows each customer to have a bespoke label that meets their requirements.
PierbridgePrintRequest/
Outputs
No
Zero or One
Container Parent element for Output elements.
Output elements are used to modify (in a limited way) how the labels and documents are produced and printed.
PierbridgePrintRequest/
Outputs/
Output
No
Zero or Many
Container Parent element for information about each Output.
Include one of these elements for each Output.
PierbridgePrintRequest/
Outputs/
Output/
OutputType
No
Zero or One
Integer The type of label or document.
If blank then all other settings in this block apply to all labels and documents.
See Appendix A for valid values.
PierbridgePrintRequest/
Outputs/
Output/
Copies
No
Zero or One
Integer The number of copies of the label or document to produce.
PierbridgePrintRequest/
Outputs/
Output/
Pieces
No
Zero or One
Integer The number of pieces (e.g. packages, pallets) to produce the label or document for.
E.g. if set to 2 then labels with '1 of 2' and
'2 or 2' indicators will be produced.
PierbridgePrintRequest/
Outputs/
Output/
PrinterID
No
Zero or One
Integer The numeric identifier of the printer to print the label or document to.
Must be a value from the Printers.[ID] column in the Pierbridge Shipment Server database.
PierbridgePrintRequest/
Outputs/
Output/
PrintToClient
No
Zero or One
Boolean Indicates whether to print the label or document to the front-end.
Omit the element if the default printing method for the label or document is to be used, else set to ‘True’.
PierbridgePrintRequest/
UserName
Yes
One
String The Windows username of the user who is
submitting the request.
Print Programming Information 136
XML RESPONSE
After the above XML request has been POSTed on the HTTP connection an XML response will be returned, which will adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgePrintResponse Yes
One
Container Root element.
PierbridgePrintResponse/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgePrintResponse/
Status
Yes
One
Container Parent element for status elements.
PierbridgePrintResponse/
Status/
Code
Yes
One
Integer Indicates whether the print has been successful.
A value of ‘0’ indicates failure and ‘1’ indicates success.
PierbridgePrintResponse/
Status/
Description
Yes
One
String A textual description of the print’s success.
If the print has failed, then the value will summarise why it failed.
PierbridgePrintResponse/
Outputs/
No
Zero or Many
Container Parent element for outputs.
PierbridgePrintResponse/
Outputs/
Output
No
Zero or Many
Container Parent element for output elements.
One of these elements is provided for each output that is returned in the
response XML.
PierbridgePrintResponse/
Outputs/
Output/
Type
No
Zero or One
Integer Numeric identifier for the type of output.
See Appendix A for valid values.
PierbridgePrintResponse/
Outputs/
Output/
Format
No
Zero or One
Integer Numeric identifier for the format of the output.
See Appendix A for valid values.
Print Programming Information 137
PierbridgePrintResponse/
Outputs/
Output/
MimeType
No
Zero or One
String Mime-Type of the output.
PierbridgePrintResponse/
Outputs/
Output/
Content
No
Zero or One
String A base64-encoded string that contains the output data.
Print Programming Information 138
RE-PRINT A PACKAGE LABEL
The following XML re-prints a package’s label, identifying the package via it’s unique numeric identifier.
The Pierbridge Shipment Server is configured to print the label for this package to the response XML, hence presence of the Outputs element.
Note that the Content element has an empty value; this element, when it has a value, has a large base64-encoded string, which is omitted here for brevity.
XML Request
<?xml version="1.0" encoding="utf-8"?>
<PierbridgePrintRequest>
<OutputType>1</OutputType>
<PackageID>58349</PackageID>
<UserName>user</UserName>
</PierbridgePrintRequest>
XML Response
<?xml version="1.0" encoding="utf-8"?>
<PierbridgePrintResponse>
<Outputs>
<Output>
<Type>1</Type>
<Format>2</Format>
<MimeType/>
<Content></Content>
</Output>
</Outputs>
<Status>
<Code>1</Code>
<Description>Your print was successful.</Description>
</Status>
</PierbridgePrintResponse>
Print Programming Information 139
RE-PRINT ALL INTERNATIONAL DOCUMENTATION FOR A SHIPMENT
The following XML re-prints all the documentation associated with a shipment, identifying the shipment via it’s unique numeric identifier.
The Pierbridge Shipment Server is configured to print the documentation for this shipment to a Windows, hence only the return of the Status element.
XML Request
<?xml version="1.0" encoding="utf-8"?>
<PierbridgePrintRequest>
<OutputBaseType>3</OutputBaseType>
<ShipmentID>10901</ShipmentID>
<UserName>user</UserName>
</PierbridgePrintRequest>
XML Response
<?xml version="1.0" encoding="utf-8"?>
<PierbridgePrintResponse>
<Status>
<Code>1</Code>
<Description>Your print was successful.</Description>
</Status>
</PierbridgePrintResponse>
Return Programming Information 140
RETURN PROGRAMMING INFORMATION This interface allows you to generate return shipments, which allow the original receiver of goods to return them to you.
Return service is only available for Airborne and ConnectShip (UPS) carriers.
In the XML request you specify information such as the carrier (e.g. DHL) you want to carry the items, the date to ship on, the returner, item details such as weight and dimesions, and any special services required (e.g. insurance).
The XML response will indicate whether your request has succeeded. If it hasn’t then an indication of what went wrong will be provided. If it was successful then information such as tracking numbers and labels will be returned.
XML REQUEST
The request XML document must adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeReturnRequest Yes
One
Container Root element.
PierbridgeReturnRequest/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element
content and is echoed back in the response.
PierbridgeReturnRequest/
RecordIdentifiers
No
Zero or One
Container Parent element for Record Identifier elements at the shipment-level.
Record Identifiers allow you to associate zero or more key values with a shipment.
These are typically used to link a shipment to key values in external systems, e.g. a stock or sales database.
PierbridgeReturnRequest/
RecordIdentifiers/
RecordIdentifier
No
Zero or Many
Container Parent element for information about each Record Identifier.
Include one of these elements for each Record Identifier.
PierbridgeReturnRequest/
RecordIdentifiers/
RecordIdentifier/
Keys
No
Zero or Many
Container Parent element for information about the Record Identifier’s keys.
Return Programming Information 141
PierbridgeReturnRequest/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key1
No
Zero or One
String First key value.
PierbridgeReturnRequest/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key2
No
Zero or One
String Second key value.
PierbridgeReturnRequest/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key3
No
Zero or One
String Third key value.
PierbridgeReturnRequest/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key4
No
Zero or One
String Fourth key value.
PierbridgeReturnRequest/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key5
No
Zero or One
String Fifth key value.
PierbridgeReturnRequest/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key6
No
Zero or One
String Sixth key value.
PierbridgeReturnRequest/
Live
No
Zero or One
Boolean Indicates whether the shipment is a test or not.
Omit the element if the shipment is a test one, else set to ‘True’.
PierbridgeReturnRequest/
Carrier
Yes
One
Integer The numeric identifier of the carrier (e.g. Airborne) who is to carry the shipment.
See Appendix A for valid values.
Return Programming Information 142
PierbridgeReturnRequest/
ServiceType
Yes
One
Integer The numeric identifier of the carrier service (e.g. Next Day, Ground, Express) that is to be used to carry the shipment.
See Appendix A for valid values.
PierbridgeReturnRequest/
ShipDate
Yes
One
Date The date that the items are to be shipped.
Defaults to current date if left blank.
PierbridgeReturnRequest/
DeliveryMethod
No
Zero or One
Integer The type of UPS Return Delivery service is being requested (e.g. call, email, post).
Applicable to ConnectShip (UPS) carrier only.
See Appendix A for valid values.
PierbridgeReturnRequest/
Sender
Yes
One
Container Parent element for Sender address elements.
PierbridgeReturnRequest/
Sender/
CompanyName
No
Zero or One
String The name of the company the shipment is to be returned from.
PierbridgeReturnRequest/
Sender/
Street
Yes
One
String The first line of the address the shipment is to be returned from.
PierbridgeReturnRequest/
Sender/
Locale
No
Zero or One
String The second line of the address the shipment is to be returned from.
PierbridgeReturnRequest/
Sender/
Other
No
Zero or One
String The third line of the address the shipment is to be returned from.
PierbridgeReturnRequest/
Sender/
City
Yes
One
String The city the shipment is to be returned from.
PierbridgeReturnRequest/
Sender/
Region
Yes
One
String The region the shipment is to be returned from.
If in the US, the two-letter state code
should be used, e.g. ‘MA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘Massachusetts’ or ‘Mass.’ into the required code.
Return Programming Information 143
PierbridgeReturnRequest/
Sender/
PostalCode
Yes
One
String The postal or zip code the shipment is to be returned from.
PierbridgeReturnRequest/
Sender/
Country
Yes
One
String The country the shipment is to be returned from.
The standard two-letter country codes should be used, e.g. ‘US’ or ‘CA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘USA’ or ‘United States’ into the required code.
PierbridgeReturnRequest/
ReturnTo
No
Zero or One
Container Parent element for Return To address elements.
By default the address stored in the database is used as the destination of the return shipment.
However, if you want the shipment
returned to a different address, then use this ReturnTo element.
PierbridgeReturnRequest/
ReturnTo/
Name
No
Zero or One
String The name of the person.
PierbridgeReturnRequest/
ReturnTo/
CompanyName
No
Zero or One
String The name of the company.
PierbridgeReturnRequest/
ReturnTo/
Street
No
Zero or One
String The first line of the address.
PierbridgeReturnRequest/
ReturnTo/
Locale
No
Zero or One
String The second line of the address.
PierbridgeReturnRequest/
ReturnTo/
Other
No
Zero or One
String The third line of the address.
PierbridgeReturnRequest/
ReturnTo/
City
No
Zero or One
String The city.
Return Programming Information 144
PierbridgeReturnRequest/
ReturnTo/
Region
No
Zero or One
String The region.
If in the US, the two-letter state code should be used, e.g. ‘MA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g.
‘Massachusetts’ or ‘Mass.’ into the required code.
PierbridgeReturnRequest/
ReturnTo/
PostalCode
No
Zero or One
String The postal or zip code.
PierbridgeReturnRequest/
ReturnTo/
Country
No
Zero or One
String The country.
The standard two-letter country codes should be used, e.g. ‘US’ or ‘CA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘USA’ or ‘United States’ into the required code.
PierbridgeReturnRequest/
ReturnTo/
Phone
No
Zero or One
String The phone number.
PierbridgeReturnRequest/
Billing
No
Zero or One
Container Parent element for Billing information and address elements.
The individual or organization identified in this element and its children will pay the shipping charges.
PierbridgeReturnRequest/
Billing/
PayerType
No
Zero or One
Integer The numeric identifier of the type of
payer.
If the element is omitted, then it is assumed that the individual or organization being returned to is paying the shipping charges.
See Appendix A for valid values.
PierbridgeReturnRequest/
Billing/
AccountNumber
No
Zero or One
String The account number of the payer.
Only needed if PayerType is set to ‘2’ (receiver) or ‘3’ (third party).
PierbridgeReturnRequest/
Billing/
PostalCode
No
Zero or One
String The postal or zip code.
Return Programming Information 145
PierbridgeReturnRequest/
Billing/
Country
No
Zero or One
String The country.
The standard two-letter country codes should be used, e.g. ‘US’ or ‘CA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g.
‘USA’ or ‘United States’ into the required code.
PierbridgeReturnRequest/
Packages
Yes
One
Container Parent element for packages elements.
PierbridgeReturnRequest/
Packages/
Package
Yes
One
Container Parent element for a package element.
PierbridgeReturnRequest/
Packages/
Package/
RecordIdentifiers
No
Zero or One
Container Parent element for Record Identifier elements at the package-level.
Record Identifiers allow you to associate zero or more key values with a package.
These are typically used to link a package to key values in external systems, e.g. a stock or sales database.
PierbridgeReturnRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier
No
Zero or Many
Container Parent element for information about each Record Identifier.
Include one of these elements for each Record Identifier.
PierbridgeReturnRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys
No
Zero or Many
Container Parent element for information about the Record Identifier’s keys.
PierbridgeReturnRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key1
No
Zero or One
String First key value.
Return Programming Information 146
PierbridgeReturnRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key2
No
Zero or One
String Second key value.
PierbridgeReturnRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key3
No
Zero or One
String Third key value.
PierbridgeReturnRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key4
No
Zero or One
String Fourth key value.
PierbridgeReturnRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key5
No
Zero or One
String Fifth key value.
PierbridgeReturnRequest/
Packages/
Package/
RecordIdentifiers/
RecordIdentifier/
Keys/
Key6
No
Zero or One
String Sixth key value.
Return Programming Information 147
PierbridgeReturnRequest/
Packages/
Package/
Copies
No
Zero or One
Integer Indicates the number of additional copies of the package that are to be shipped.
Defaults to zero additional copies if omitted.
PierbridgeReturnRequest/
Packages/
Package/
ShipperReference
No
Zero or One
String The reference number that you want to associate with the package.
This value will appear on the package’s label.
PierbridgeReturnRequest/
Packages/
Package/
ReferenceOne
No
Zero or One
String Can be used to associate a package with a reference number.
PierbridgeReturnRequest/
Packages/
Package/
ReferenceTwo
No
Zero or One
String Can be used to associate a package with a reference number.
PierbridgeReturnRequest/
Packages/
Package/
ReferenceThree
No
Zero or One
String Can be used to associate a package with a reference number.
PierbridgeReturnRequest/
Packages/
Package/
SenderName
Yes
One
String The name of the person the package is being returned by.
This element is provided at this level, rather than the shipment-level, as packages may be returned by different people at the same address.
PierbridgeReturnRequest/
Packages/
Package/
SenderPhone
Yes
One
String The telephone number of the person the package is being returned by.
This element is provided at this level, rather than the shipment-level, as packages may be returned by different people at the same address.
PierbridgeReturnRequest/
Packages/
Package/
SenderEmail
No
Zero or One
String The email address of the person the package is being returned by.
This element is provided at this level, rather than the shipment-level, as packages may be returned by different people at the same address.
Return Programming Information 148
PierbridgeReturnRequest/
Packages/
Package/
PackageType
Yes
One
Integer The numeric identifier for the type of package the items to be shipped are contained in.
See Appendix A for valid values.
PierbridgeReturnRequest/
Packages/
Package/
Weight
Yes
One
Float The weight of the package.
The units (e.g. pound or kilogram) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeReturnRequest/
Packages/
Package/
Length
No
Zero or One
Integer The length of the package.
The units (e.g. inch or centimeter) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeReturnRequest/
Packages/
Package/
Width
No
Zero or One
Integer The width of the package.
The units (e.g. inch or centimeter) are
determined by the configuration of the Pierbridge Shipment Server.
PierbridgeReturnRequest/
Packages/
Package/
Height
No
Zero or One
Integer The height of the package.
The units (e.g. inch or centimeter) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeReturnRequest/
Packages/
Package/
ContentDescription
No
Zero or One
String The description of the package’s content.
This value will typically appear on the package’s label.
PierbridgeReturnRequest/
Packages/
Package/
Insurance
No
Zero or One
Container Parent element for information about Insurance.
If insurance is not required for this package, then omit this element and its children.
PierbridgeReturnRequest/
Packages/
Package/
Insurance/
Type
No
Zero or One
Integer This value should be set to ‘1’ if insurance is required.
Return Programming Information 149
PierbridgeReturnRequest/
Packages/
Package/
Insurance/
Value
No
Zero or One
Float The value the package is to be insured for.
The units (e.g. USD or CAD) are determined by the configuration of the Pierbridge Shipment Server.
PierbridgeReturnRequest/
Packages/
Package/
AdditionalHandling
No
Zero of One
Boolean Indicates that extra handling measures are required when loading the package.
Omit this element if the package does not require additional handling, else set to ‘True’.
PierbridgeReturnRequest/
Packages/
Package/
LargePackage
No
Zero of One
Boolean Indicates that this package has UPS ‘Large Package’ dimensions.
Omit this element if the package does not have UPS ‘Large Package’ dimensions, else set to ‘True’.
PierbridgeReturnRequest/
Packages/
Package/
Hold
No
Zero or One
Boolean Indicates whether the package should be
held for collection at a carrier’s depot or some other location.
Omit this element if the package is not to be held, else set to ‘True’.
PierbridgeReturnRequest/
Packages/
Package/
Holder
No
Zero or One
Container Parent element for information about the individual or organization who is to hold the package for collection.
If holder information is not required for this package, then omit this element and its children.
PierbridgeReturnRequest/
Packages/
Package/
Holder/
Name
No
Zero or One
String The name of the individual who is to hold the package for collection.
PierbridgeReturnRequest/
Packages/
Package/
Holder/
CompanyName
No
Zero or One
String The name of the company where the package is to be held for collection.
Return Programming Information 150
PierbridgeReturnRequest/
Packages/
Package/
Holder/
Street
No
Zero or One
String The first line of the address where the package is to be held for collection.
PierbridgeReturnRequest/
Packages/
Package/
Holder/
Locale
No
Zero or One
String The second line of the address where the package is to be held for collection.
PierbridgeReturnRequest/
Packages/
Package/
Holder/
Other
No
Zero or One
String The third line of the address where the package is to be held for collection.
PierbridgeReturnRequest/
Packages/
Package/
Holder/
City
No
Zero or One
String The city where the package is to be held for collection.
PierbridgeReturnRequest/
Packages/
Package/
Holder/
Region
No
Zero or One
String The region where the package is to be held for collection
If in the US, the two-letter state code should be used, e.g. ‘MA’.
The Pierbridge Shipment Server can be configured to translate any value, e.g. ‘Massachusetts’ or ‘Mass.’ into the required code.
PierbridgeReturnRequest/
Packages/
Package/
Holder/
PostalCode
No
Zero or One
String The postal or zip code where the package is to be held for collection.
Return Programming Information 151
PierbridgeReturnRequest/
Packages/
Package/
Holder/
Country
No
Zero or One
String The country where the package is to be held for collection
The standard two-letter country codes should be used, e.g. ‘US’ or ‘CA’.
The Pierbridge Shipment Server can be
configured to translate any value, e.g. ‘USA’ or ‘United States’ into the required code.
PierbridgeReturnRequest/
Packages/
Package/
Holder/
Phone
No
Zero or One
String The phone number of the individual who is to hold the package for collection.
Return Programming Information 152
XML RESPONSE
After the above XML request has been POSTed on the HTTP connection an XML response will be returned, which will adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeReturnResponse Yes
One
Container Root element.
PierbridgeReturnResponse/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeReturnResponse/
Packages
Yes
One
Container Parent element for packages elements.
PierbridgeReturnResponse/
Packages/
Package
Yes
One
Container Parent element for a package element.
PierbridgeReturnResponse/
Packages/
Package/
Status
Yes
One
Container Parent element for package status elements.
PierbridgeReturnResponse/
Packages/
Package/
Status/
Code
Yes
One
Integer Indicates whether the package has been successfully shipped.
A value of ‘0’ indicates failure and ‘1’ indicates success.
PierbridgeReturnResponse/
Packages/
Package/
Status/
Description
Yes
One
String A textual description of the package’s
success.
If the package has failed, then the value will summarise why it failed.
Return Programming Information 153
PierbridgeReturnResponse/
Packages/
Package/
ShipperReference
No
Zero or One
String The reference number that you associated with the package in the request.
This value will appear on the package’s label.
PierbridgeReturnResponse/
Packages/
Package/
WayBillNumber
Yes
One
String The tracking number that has been assigned to the package.
PierbridgeReturnResponse/
Packages/
Package/
PackageID
Yes
One
Integer A unique numeric identifier for the package.
PierbridgeReturnResponse/
Packages/
Package/
Labels
No
Zero or One
Container Parent element for package labels elements.
Note, labels are only included in the response if they are configured to do so.
PierbridgeReturnResponse/
Packages/
Package/
Labels/
Output
No
Zero or Many
Container Parent element for package label elements.
One of these elements is provided for each label associated with the package.
PierbridgeReturnResponse/
Packages/
Package/
Labels/
Output/
Type
No
Zero or One
Integer Numeric identifier for the type of label.
See Appendix A for valid values.
PierbridgeReturnResponse/
Packages/
Package/
Labels/
Output/
Format
No
Zero or One
Integer Numeric identifier for the format of the label.
See Appendix A for valid values.
Return Programming Information 154
PierbridgeReturnResponse/
Packages/
Package/
Labels/
Output/
MimeType
No
Zero or One
String Mime-Type of the label.
PierbridgeReturnResponse/
Packages/
Package/
Labels/
Output/
Content
No
Zero or One
String A base64-encoded string that contains the label data.
Return Programming Information 155
BASIC PACKAGE
The following XML generates a return shipment. This represents the minimum information that is typically provided for returns.
A ConnectShip (UPS) ground carrier service has been specified in this example. The delivery method is set to 0 (zero), which indicates that the return label should be printed.
XML Request
<?xml version="1.0" encoding="UTF-8"?>
<PierbridgeReturnRequest>
<Carrier>12</Carrier>
<ServiceType>77</ServiceType>
<DeliveryMethod>0</DeliveryMethod>
<ShipDate></ShipDate>
<Sender>
<CompanyName>The White House</CompanyName>
<Street>1600 Pennsylvania Avenue NW</Street>
<City>Washington</City>
<Region>DC</Region>
<PostalCode>20500</PostalCode>
<Country>US</Country>
</Sender>
<Packages>
<Package>
<SenderName>Mr President</SenderName>
<SenderPhone>202-456-1414</SenderPhone>
<PackageType>27</PackageType>
<Weight>10.5</Weight>
<ContentDescription>Pens</ContentDescription>
</Package>
</Packages>
<UserName>user</UserName>
</PierbridgeReturnRequest>
XML Response
<?xml version="1.0" encoding="utf-8"?>
<PierbridgeReturnResponse>
<Packages>
<Package>
<Status>
<Code>1</Code>
<Description>Success</Description>
</Status>
<WayBillNumber>1Z1234569012390780</WayBillNumber>
<Labels>
<Output>
<Type>4</Type>
<Format>2</Format>
<MimeType></MimeType>
<Content></Content>
</Output>
</Labels>
<PackageID>58684</PackageID>
</Package>
</Packages>
<Carrier>12</Carrier>
<CarrierName>ConnectShip (UPS)</CarrierName>
<CarrierScac>UPS</CarrierScac>
<ServiceType>77</ServiceType>
<ServiceTypeName>UPS Ground</ServiceTypeName>
<Weight>10.5</Weight>
Return Programming Information 156
<ShipmentID>11191</ShipmentID>
</PierbridgeReturnResponse>
End Of Day List Programming Information 157
END OF DAY LIST PROGRAMMING INFORMATION This interface allows you to list the currently open manifests for a certain carrier.
End Of Day is only applicable to on-site shipping systems such as ConnectShip, FSMS and ProShip.
In the XML request you specify the carrier you want to list open manifests for.
The XML response will indicate whether your request has succeeded. If it hasn’t then an indication of what went wrong will be provided. If it was successful then a list of manifests for the specified carrier that can be actioned (using the End Of Day Action interface) will be returned.
XML REQUEST
The request XML document must adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeEndOfDayListRequest Yes
One
Container Root element.
PierbridgeEndOfDayListRequest/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeEndOfDayListRequest/
Carrier
Yes
One
Integer The numeric identifier of the carrier (e.g. ConnectShip (UPS)) whose open manifests
are to be returned.
See Appendix A for valid values.
PierbridgeEndOfDayListRequest/
Live
No
Zero or One
Boolean Indicates whether the manifest list is a test or not.
Omit the element if the manifest list is a test one, else set to ‘True’.
PierbridgeEndOfDayListRequest/
UserName
Yes
One
String The Windows username of the user who is submitting the request.
End Of Day List Programming Information 158
XML RESPONSE
After the above XML request has been POSTed on the HTTP connection an XML response will be returned, which will adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeEndOfDayListResponse Yes
One
Container Root element.
PierbridgeEndOfDayListResponse/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeEndOfDayListResponse/
Status
Yes
One
Container Parent element for status elements.
PierbridgeEndOfDayListResponse/
Status/
Code
Yes
One
Integer Indicates whether the list has been successful.
A value of ‘0’ indicates failure and ‘1’ indicates success.
PierbridgeEndOfDayListResponse/
Status/
Description
Yes
One
String A textual description of the list’s success.
If the list has failed, then the value will summarise why it failed.
PierbridgeEndOfDayListResponse/
Manifests
Yes
One
Container Parent element for manifest elements.
PierbridgeEndOfDayListResponse/
Manifests/
Manifest
No
Zero or Many
Container Parent element for a manifest element.
There will be one manifest element for each open manifest of the carrier specified in the request XML.
PierbridgeEndOfDayListResponse/
Manifests/
Manifest/
CarrierName
No
Zero or One
String The name of the carrier the open manifest if for.
PierbridgeEndOfDayListResponse/
Manifests/
Manifest/
Carrier
No
Zero or One
Integer The numeric identifier of the carrier (e.g. ConnectShip (UPS)) the open manifest if for.
See Appendix A for valid values.
End Of Day List Programming Information 159
PierbridgeEndOfDayListResponse/
Manifests/
Manifest/
ShipDate
No
Zero or One
Date The date the open manifest if for.
Normally a manifest relates to a single day’s shipping activity. So, there is typically one manifest per carrier per day.
PierbridgeEndOfDayListResponse/
Manifests/
Manifest/
Identifier
No
Zero or One
String The shipping system’s identifier for the open manifest.
If returned, this value should be passed in the ‘Identifier’ element of the End Of Day Action request XML.
End Of Day List Programming Information 160
EXAMPLE
The following XML requests a list of open manifests for the ConnectShip (UPS) carrier. This is all the information that is typically provided.
For brevity, only one of the many open manifests that could be in the response are shown below.
Note the Identifier element in the response XML. This value should be provided in the End Of Day Action request XML when actioning a manifest.
XML Request
<?xml version="1.0" encoding="UTF-8"?>
<PierbridgeEndOfDayListRequest>
<Carrier>12</Carrier>
<UserName>user</UserName>
</PierbridgeEndOfDayListRequest>
XML Response
<?xml version="1.0" encoding="utf-8"?>
<PierbridgeEndOfDayListResponse>
<Status>
<Code>1</Code>
<Description>No error</Description>
</Status>
<Manifests>
<Manifest>
<ShipDate>2007-01-01</ShipDate>
<Identifier>SHIPDATE_20070101</Identifier>
<Carrier>12</Carrier>
<CarrierName>ConnectShip (UPS)</CarrierName>
</Manifest>
</Manifests>
<TransactionIdentifier></TransactionIdentifier>
</PierbridgeEndOfDayListResponse>
End Of Day Action Programming Information 161
END OF DAY ACTION PROGRAMMING INFORMATION This interface allows you to action a currently open manifest.
End Of Day is only applicable to on-site shipping systems such as ConnectShip, FSMS and ProShip.
In the XML request you specify the carrier, ship date and identifier of the manifest that you want to action. This information is typically gathered by using the End Of Day List Manifests interface.
The XML response will indicate whether your request has succeeded. If it hasn’t then an indication of what went wrong will be provided. If it was successful then (dependent on Shipment Server configuation) any manifest documentation that was produced will be returned.
XML REQUEST
The request XML document must adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeEndOfDayActionRequest Yes
One
Container Root element.
PierbridgeEndOfDayActionRequest/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeEndOfDayActionRequest/
Carrier
Yes
One
Integer The numeric identifier of the carrier (e.g. ConnectShip (UPS)) whose manifest is to be actioned.
See Appendix A for valid values.
PierbridgeEndOfDayActionRequest/
ShipDate
Yes
One
Date The date the manifest if for.
Normally a manifest relates to a single day’s shipping activity. So, there is typically one manifest per carrier per day.
PierbridgeEndOfDayActionRequest/
Identifier
No
Zero or One
String The shipping system’s identifier for the manifest to be actioned.
The value should be the one returned in the ‘Identifier’ element of the End Of Day List response XML.
This element is required for ConnectShip carriers.
End Of Day Action Programming Information 162
PierbridgeEndOfDayActionRequest/
Live
No
Zero or One
Boolean Indicates whether the manifest list is a test or not.
Omit the element if the manifest list is a test one, else set to ‘True’.
PierbridgeEndOfDayActionRequest/
UserName
Yes
One
String The Windows username of the user who is submitting the request.
End Of Day Action Programming Information 163
XML RESPONSE
After the above XML request has been POSTed on the HTTP connection an XML response will be returned, which will adhere to the following structure.
Element (XPath) Required/
Cardinality
Type Description
PierbridgeEndOfDayActionResponse Yes
One
Container Root element.
PierbridgeEndOfDayActionResponse/
TransactionIdentifier
No
Zero or One
String Used to synchronize request/response pairs.
It can contain any valid XML element content and is echoed back in the response.
PierbridgeEndOfDayActionResponse/
Status
Yes
One
Container Parent element for status elements.
PierbridgeEndOfDayActionResponse/
Status/
Code
Yes
One
Integer Indicates whether the action has been successful.
A value of ‘0’ indicates failure and ‘1’ indicates success.
PierbridgeEndOfDayActionResponse/
Status/
Description
Yes
One
String A textual description of the action’s success.
If the action has failed, then the value will summarise why it failed.
PierbridgeEndOfDayActionResponse/
Carrier
Yes
One
Integer The numeric identifier of the carrier (e.g. ConnectShip (UPS)) whose manifest was to be actioned.
See Appendix A for valid values.
PierbridgeEndOfDayActionResponse/
ShipDate
Yes
One
Date The date the manifest if for.
Normally a manifest relates to a single day’s shipping activity. So, there is typically one manifest per carrier per day.
PierbridgeEndOfDayActionResponse/
Identifier
No
Zero or One
String The shipping system’s identifier for the manifest that was to be actioned.
PierbridgeEndOfDayActionResponse/
Documents
No
Zero or One
Container Parent element for manifest document elements.
Note, documents are only included in the response if they are configured to do so.
End Of Day Action Programming Information 164
PierbridgeEndOfDayActionResponse/
Documents/
Output
No
Zero or Many
Container Parent element for manifest document elements.
One of these elements is provided for each document associated with the manifest.
PierbridgeEndOfDayActionResponse/
Documents/
Output/
Type
No
Zero or One
Integer Numeric identifier for the type of document.
See Appendix A for valid values.
PierbridgeEndOfDayActionResponse/
Documents/
Output/
Format
No
Zero or One
Integer Numeric identifier for the format of the document.
See Appendix A for valid values.
PierbridgeEndOfDayActionResponse/
Documents/
Output/
MimeType
No
Zero or One
String Mime-Type of the document.
PierbridgeEndOfDayActionResponse/
Documents/
Output/
Content
No
Zero or One
String A base64-encoded string that contains the document data.
End Of Day Action Programming Information 165
EXAMPLE
The following XML requests the action of a manifest for the ConnectShip (UPS) carrier. This is all the information that is typically provided.
Note the Identifier element in the request XML. This is the value that was returned in End Of Day List response XML.
Note that the Content element (in the response XML) has an empty value; this element, when it has a value, has a large base64-encoded string, which is omitted here for brevity.
XML Request
<?xml version="1.0" encoding="UTF-8"?>
<PierbridgeEndOfDayActionRequest>
<Carrier>12</Carrier>
<ShipDate>2007-01-01</ShipDate>
<Identifier>SHIPDATE_20070101</Identifier>
<UserName>user</UserName>
</PierbridgeEndOfDayActionRequest>
XML Response
<?xml version="1.0" encoding="utf-8"?>
<PierbridgeEndOfDayActionResponse>
<Status>
<Code>0</Code>
<Description>Close out: Ok. Produce document: Ok. Transmit: Ok.</Description>
</Status>
<Carrier>12</Carrier>
<Documents>
<Output>
<Type>10</Type>
<Format>1</Format>
<MimeType>image/png</MimeType>
<Content></Content>
</Output>
</Documents>
</PierbridgeEndOfDayActionResponse>
Appendix B 166
APPENDICES
APPENDIX A – REFERENCE TABLES
These tables detail the valid values for various elements in the XML requests and responses.
Carriers
The carrier, e.g. DHL, FedEx, UPS, to use.
Value Description
1 Airborne
9 Capital Logistics
14 ConnectShip (Airborne)
25 ConnectShip (CanadaPost)
26 ConnectShip (CANPAR)
18 ConnectShip (DHL Express)
10 ConnectShip (DHL)
33 ConnectShip (FedEx FSMS)
11 ConnectShip (FedEx)
22 ConnectShip (ICS Courier)
27 ConnectShip (LOOMIS)
21 ConnectShip (Purolator)
28 ConnectShip (UPS Canada)
12 ConnectShip (UPS)
13 ConnectShip (USPS)
7 DHL
5 Endicia
2 FedEx
24 FreightQuote
23 Pass Through
32 ProShip (DHL)
29 ProShip (FedEx FSMS)
30 ProShip (UPS)
31 ProShip (USPS)
3 UPS
19 USPS
Package Type
The type of packaging to use. The value must be used in relation to the stated carrier.
Value Description Carrier Related To
1 Letter Airborne
2 Parcel Airborne
23 Customer Package Capital Logistics
34 Customer Package ConnectShip (Airborne)
35 Letter ConnectShip (Airborne)
77 Customer Package ConnectShip (CanadaPost)
78 Pak ConnectShip (CanadaPost)
79 Box ConnectShip (CanadaPost)
Appendix B 167
80 Tube ConnectShip (CanadaPost)
81 Letter ConnectShip (CanadaPost)
82 10kg Box ConnectShip (CanadaPost)
83 25kg Box ConnectShip (CanadaPost)
84 Pallet ConnectShip (CanadaPost)
85 Customer Package ConnectShip (CANPAR)
86 Pak ConnectShip (CANPAR)
87 Box ConnectShip (CANPAR)
88 Tube ConnectShip (CANPAR)
89 Letter ConnectShip (CANPAR)
90 10kg Box ConnectShip (CANPAR)
91 25kg Box ConnectShip (CANPAR)
92 Pallet ConnectShip (CANPAR)
44 Customer Package ConnectShip (DHL Express)
45 Lab Pak ConnectShip (DHL Express)
46 Box ConnectShip (DHL Express)
47 Letter ConnectShip (DHL Express)
24 Customer Package ConnectShip (DHL)
118 Letter ConnectShip (FedEx FSMS)
119 Customer Package ConnectShip (FedEx FSMS)
120 Box ConnectShip (FedEx FSMS)
121 Tube ConnectShip (FedEx FSMS)
122 Pak ConnectShip (FedEx FSMS)
123 10kg Box ConnectShip (FedEx FSMS)
124 25kg Box ConnectShip (FedEx FSMS)
25 Customer Package ConnectShip (FedEx)
52 Customer Package ConnectShip (ICS Courier)
93 Customer Package ConnectShip (LOOMIS)
94 Pak ConnectShip (LOOMIS)
95 Box ConnectShip (LOOMIS)
96 Tube ConnectShip (LOOMIS)
97 Letter ConnectShip (LOOMIS)
98 10kg Box ConnectShip (LOOMIS)
99 25kg Box ConnectShip (LOOMIS)
100 Pallet ConnectShip (LOOMIS)
51 Customer Package ConnectShip (Purolator)
101 Customer Package ConnectShip (UPS Canada)
102 Pak ConnectShip (UPS Canada)
103 Box ConnectShip (UPS Canada)
104 Tube ConnectShip (UPS Canada)
105 Letter ConnectShip (UPS Canada)
106 10kg Box ConnectShip (UPS Canada)
107 25kg Box ConnectShip (UPS Canada)
108 Pallet ConnectShip (UPS Canada)
26 UPS Letter ConnectShip (UPS)
27 Customer Package ConnectShip (UPS)
28 UPS Tube ConnectShip (UPS)
29 UPS Pak ConnectShip (UPS)
30 UPS Express Box ConnectShip (UPS)
31 UPS 25 KG Box® ConnectShip (UPS)
32 UPS 10 KG Box® ConnectShip (UPS)
33 Customer Package ConnectShip (USPS)
55 Letter ConnectShip (USPS)
57 Priority Mail Flat Rate Box (12" x 3.5" x 14") ConnectShip (USPS)
58 Priority Mail Flat Rate Box (11" x 8.5" x 5.5) ConnectShip (USPS)
20 DHL Express Envelope DHL
Appendix B 168
21 Other DHL Packaging DHL
22 Customer Package DHL
17 Customer Package Endicia
3 FedEx® Envelope FedEx
4 FedEx® Pak FedEx
5 FedEx Box FedEx
6 FedEx® Tube FedEx
7 FedEx 10kg Box FedEx
8 FedEx 25kg Box FedEx
9 Customer Package FedEx
61 Pallet FreightQuote
62 Crate FreightQuote
63 Motorcycle FreightQuote
64 Bag FreightQuote
65 Cylinder FreightQuote
66 ATV FreightQuote
67 Bale FreightQuote
68 Drum FreightQuote
69 Box FreightQuote
70 Pail FreightQuote
71 Bunch FreightQuote
72 Reel FreightQuote
73 Carpet FreightQuote
74 Roll FreightQuote
75 Coil FreightQuote
76 Tubing/Pipe FreightQuote
53 Customer Package Pass Through
112 Customer Package ProShip (DHL)
113 Box ProShip (DHL)
114 Letter ProShip (DHL)
115 Laboratory Package ProShip (DHL)
116 10kg Box ProShip (DHL)
117 25kg Box ProShip (DHL)
109 Customer Package ProShip (FedEx FSMS)
110 Customer Package ProShip (UPS)
111 Customer Package ProShip (USPS)
18 Customer Packag Scancode
10 UPS Letter UPS
11 Customer Package UPS
12 UPS Tube UPS
13 UPS Pak UPS
14 UPS Express Box UPS
15 UPS 25 KG Box® UPS
16 UPS 10 KG Box® UPS
48 Customer Package USPS
49 Flat Rate Envelope USPS
50 Flat Rate Box USPS
Service Type
The type of service, e.g. Next Day, Ground, Freight, to use. The value must be used in relation to the stated carrier.
Value Description Carrier Related To
1 Express 10:30 Airborne
Appendix B 169
2 Express Airborne
3 Express Saturday Airborne
4 Next Afternoon Airborne
5 Second Day Service Airborne
6 Ground Airborne
57 All Available Services Capital Logistics
95 Airborne Express 1030 AM ConnectShip (Airborne)
96 Airborne Express ConnectShip (Airborne)
97 Airborne Next Afternoon Service ConnectShip (Airborne)
98 Airborne Second Day Service ConnectShip (Airborne)
99 Airborne Ground Service ConnectShip (Airborne)
100 Airborne @Home Second Service ConnectShip (Airborne)
101 Airborne @Home Ground Service ConnectShip (Airborne)
102 Airborne @Home Media Mail Second Day Service ConnectShip (Airborne)
103 Airborne @Home Media Mail Ground Service ConnectShip (Airborne)
168 Canada Post Priority Courier ConnectShip (CanadaPost)
169 Canada Post Express Post ConnectShip (CanadaPost)
170 Canada Post Expedited Parcel ConnectShip (CanadaPost)
171 Canada Post Regular Parcel ConnectShip (CanadaPost)
172 Canada Post Purolator Intl ConnectShip (CanadaPost)
173 Canada Post Express Post USA ConnectShip (CanadaPost)
174 Canada Post Small Packet Air Intl ConnectShip (CanadaPost)
175 Canada Post Air Parcel Intl ConnectShip (CanadaPost)
176 Canada Post Surface Parcel Intl ConnectShip (CanadaPost)
177 Canada Post Express Post Intl ConnectShip (CanadaPost)
178 Canada Post Commercial Expedited Parcel USA ConnectShip (CanadaPost)
179 Canada Post Expedited Parcel USA ConnectShip (CanadaPost)
180 Canada Post Small Packet Surface Intl ConnectShip (CanadaPost)
181 CANPAR Ground ConnectShip (CANPAR)
182 CANPAR Select ConnectShip (CANPAR)
183 CANPAR USA ConnectShip (CANPAR)
123 DHL Next Day 10:30 am ConnectShip (DHL Express)
124 DHL Next Day 12:00 pm ConnectShip (DHL Express)
125 DHL Next Day 3:00 pm ConnectShip (DHL Express)
126 DHL 2nd Day Service ConnectShip (DHL Express)
127 DHL Ground Service ConnectShip (DHL Express)
128 DHL @Home 2nd Day ConnectShip (DHL Express)
129 DHL @Home Ground ConnectShip (DHL Express)
130 DHL Media Mail @Home 2nd Day ConnectShip (DHL Express)
131 DHL Media Mail @Home Ground ConnectShip (DHL Express)
132 DHL Bound Printed Matter @Home 2nd Day ConnectShip (DHL Express)
133 DHL Bound Printed Matter @Home Ground ConnectShip (DHL Express)
134 DHL International Document Service ConnectShip (DHL Express)
135 DHL International Document Letter Service ConnectShip (DHL Express)
136 DHL Worldwide Priority Express ConnectShip (DHL Express)
137 DHL Global Mail Priority Service ConnectShip (DHL Express)
138 DHL Global Mail Standard Service ConnectShip (DHL Express)
58 US Overnight ConnectShip (DHL)
59 Second Day ConnectShip (DHL)
60 Ground ConnectShip (DHL)
61 Worldwide Express ConnectShip (DHL)
262 FedEx First Overnight ConnectShip (FedEx FSMS)
263 FedEx Priority Overnight ConnectShip (FedEx FSMS)
264 FedEx Standard Overnight ConnectShip (FedEx FSMS)
265 FedEx 2Day ConnectShip (FedEx FSMS)
266 FedEx Express Saver ConnectShip (FedEx FSMS)
Appendix B 170
267 FedEx 1Day Freight ConnectShip (FedEx FSMS)
268 FedEx 2Day Freight ConnectShip (FedEx FSMS)
269 FedEx 3Day Freight ConnectShip (FedEx FSMS)
270 FedEx International First ConnectShip (FedEx FSMS)
271 FedEx International Priority ConnectShip (FedEx FSMS)
272 FedEx International Economy ConnectShip (FedEx FSMS)
273 FedEx International Priority Freight ConnectShip (FedEx FSMS)
274 FedEx International Economy Freight ConnectShip (FedEx FSMS)
275 FedEx Ground ConnectShip (FedEx FSMS)
276 FedEx Home Delivery ConnectShip (FedEx FSMS)
62 FedEx Priority Overnight® ConnectShip (FedEx)
63 FedEx Standard Overnight® ConnectShip (FedEx)
64 FedEx First Overnight® ConnectShip (FedEx)
65 FedEx 2Day® ConnectShip (FedEx)
66 FedEx Express Saver® ConnectShip (FedEx)
67 FedEx International Priority® ConnectShip (FedEx)
68 FedEx International Economy® ConnectShip (FedEx)
69 FedEx International First® ConnectShip (FedEx)
70 FedEx 1 Day® Freight ConnectShip (FedEx)
71 FedEx 2 Day® Freight ConnectShip (FedEx)
72 FedEx 3 Day® Freight ConnectShip (FedEx)
73 FedEx International Priority® Freight ConnectShip (FedEx)
74 FedEx International Economy® Freight ConnectShip (FedEx)
155 ICS Next Day ConnectShip (ICS Courier)
156 ICS Ground ConnectShip (ICS Courier)
184 Ground (Canada) ConnectShip (LOOMIS)
185 Express ConnectShip (LOOMIS)
186 DHL Express 9AM Delivery ConnectShip (LOOMIS)
146 Purolator Air 9:00 AM ConnectShip (Purolator)
147 Purolator Air 10:30 AM ConnectShip (Purolator)
148 Purolator Air ConnectShip (Purolator)
149 Purolator Ground ConnectShip (Purolator)
150 Purolator Ground 9:00 AM ConnectShip (Purolator)
151 Purolator Ground 10:30 AM ConnectShip (Purolator)
152 Purolator Air to USA ConnectShip (Purolator)
153 Purolator Ground to USA ConnectShip (Purolator)
154 Purolator International Air ConnectShip (Purolator)
187 UPS Express Early A.M. ConnectShip (UPS Canada)
188 UPS Express Plus (Canada) ConnectShip (UPS Canada)
189 UPS Express (Canada) ConnectShip (UPS Canada)
190 UPS Express Saver (Canada) ConnectShip (UPS Canada)
191 UPS Expedited (Canada) ConnectShip (UPS Canada)
192 UPS 3 Day Select (Canada) ConnectShip (UPS Canada)
193 UPS Standard (Canada) ConnectShip (UPS Canada)
194 UPS Economy ConnectShip (UPS Canada)
195 UPS Next Day Air Saver (Canada) ConnectShip (UPS Canada)
75 UPS Next Day Air® ConnectShip (UPS)
76 UPS 2nd Day Air® ConnectShip (UPS)
77 UPS Ground ConnectShip (UPS)
78 UPS Worldwide Express SM ConnectShip (UPS)
79 UPS Worldwide Expedited SM ConnectShip (UPS)
80 UPS 3 Day Select® ConnectShip (UPS)
81 UPS Next Day Air Saver® ConnectShip (UPS)
82 UPS Next Day Air® Early A.M.® ConnectShip (UPS)
83 UPS Worldwide Express Plus SM ConnectShip (UPS)
84 UPS 2nd Day Air A.M.® ConnectShip (UPS)
Appendix B 171
85 First-Class Mail® ConnectShip (USPS)
86 Priority Mail ConnectShip (USPS)
87 Media Mail (Single Piece) ConnectShip (USPS)
92 Express Mail International® ConnectShip (USPS)
93 USPS Intl Airmail M-bags ConnectShip (USPS)
94 Priority Mail International ConnectShip (USPS)
158 USPS Express Mail (Custom) ConnectShip (USPS)
159 USPS Express Mail (PO) ConnectShip (USPS)
160 USPS Express Mail (Addressee) ConnectShip (USPS)
289 First-Class Mail International ConnectShip (USPS)
290 Standard Mail (Custom) ConnectShip (USPS)
291 Standard Mail (DBMC) ConnectShip (USPS)
292 Parcel Post ConnectShip (USPS)
293 Bound Printed Matter (Single-Piece) ConnectShip (USPS)
294 Bound Printed Matter (Presorted) ConnectShip (USPS)
295 Library Mail (Single-Piece) ConnectShip (USPS)
296 Media Mail (5-Digit) ConnectShip (USPS)
297 Media Mail (Basic) ConnectShip (USPS)
298 Library Mail (5-Digit) ConnectShip (USPS)
299 Library Mail (Basic) ConnectShip (USPS)
300 Parcel Select (DBMC) ConnectShip (USPS)
40 US Overnight DHL
41 Worldwide Express Non-dutiable DHL
42 US Express DHL
43 Worldwide Express Envelope DHL
44 Worldwide Express Dutiable DHL
45 Second Day Express DHL
46 Second Day DHL
47 Ground DHL
35 First-Class Mail® Endicia
36 Priority Mail Endicia
37 Media Mail® Endicia
161 Library Mail® Endicia
162 Global Express Mail® Endicia
163 Global Priority Mail® Endicia
164 Global Air Parcel Post® Endicia
166 Parcel Post (Non Machineable) Endicia
167 Parcel Post (Machineable) Endicia
7 FedEx Priority Overnight® FedEx
8 FedEx Standard Overnight® FedEx
9 FedEx First Overnight® FedEx
10 FedEx 2Day® FedEx
11 FedEx Express Saver® FedEx
12 FedEx International Priority® FedEx
13 FedEx International Economy® FedEx
14 FedEx International First® FedEx
15 FedEx 1 Day® Freight FedEx
16 FedEx 2 Day® Freight FedEx
17 FedEx 3 Day® Freight FedEx
18 FedEx Ground® FedEx
19 FedEx Ground Home Delivery® FedEx
20 FedEx International Priority® Freight FedEx
21 FedEx International Economy® Freight FedEx
22 FedEx Europe First International Priority FedEx
165 Selected LTL Service FreightQuote
157 Pass Through Service Pass Through
Appendix B 172
235 DHL Next Day 10:30 AM ProShip (DHL)
236 DHL Next Day Noon ProShip (DHL)
237 DHL Next Day 3:00 PM ProShip (DHL)
238 DHL 2nd Day ProShip (DHL)
239 DHL Ground ProShip (DHL)
240 DHL @Home Standard w/DC ProShip (DHL)
241 DHL @Home Deferred w/DC ProShip (DHL)
242 DHL @Home Media Mail Standard w/DC ProShip (DHL)
243 DHL @Home Media Mail Deferred w/DC ProShip (DHL)
244 DHL @Home Bound Printed Matter Standard w/DC ProShip (DHL)
245 DHL @Home Bound Printed Matter Deferred w/DC ProShip (DHL)
246 DHL International Document ProShip (DHL)
247 DHL Worldwide Priority Express ProShip (DHL)
248 DHL Global Mail Priority ProShip (DHL)
249 DHL Global Mail Standard ProShip (DHL)
250 DHL @Home Standard (no DC) ProShip (DHL)
251 DHL @Home Deferred (no DC) ProShip (DHL)
252 DHL @Home Media Mail Standard (no DC) ProShip (DHL)
253 DHL @Home Media Mail Deferred (no DC) ProShip (DHL)
254 DHL @Home Bound Printed Matter Standard (no DC) ProShip (DHL)
255 DHL @Home Bound Printed Matter Deferred (no DC) ProShip (DHL)
256 DHL @Home Expedited ProShip (DHL)
257 DHL Media Mail @Home Expedited ProShip (DHL)
258 DHL Bound Printed Matter @Home Expedited ProShip (DHL)
259 DHL @Home Expedited (no DC) ProShip (DHL)
260 DHL Media Mail @Home Expedited (no DC) ProShip (DHL)
261 DHL Bound Printed Matter @Home Expedited (no DC) ProShip (DHL)
196 FedEx Priority Overnight/Intl Priority ProShip (FedEx FSMS)
197 FedEx Standard Overnight ProShip (FedEx FSMS)
198 FedEx First Overnight/Intl First ProShip (FedEx FSMS)
199 FedEx 2Day/Intl Economy ProShip (FedEx FSMS)
200 FedEx Express Saver ProShip (FedEx FSMS)
201 FedEx 1Day Freight/Intl Priority Freight ProShip (FedEx FSMS)
202 FedEx 2Day Freight ProShip (FedEx FSMS)
203 FedEx 3Day Freight ProShip (FedEx FSMS)
204 FedEx Home Delivery ProShip (FedEx FSMS)
205 FedEx Ground ProShip (FedEx FSMS)
206 FedEx Intl Economy Freight ProShip (FedEx FSMS)
207 FedEx Intl Priority DirectDistribution ProShip (FedEx FSMS)
208 UPS Next Day Air Early A.M. ProShip (UPS)
209 UPS Next Day Air ProShip (UPS)
210 UPS Next Day Air Saver ProShip (UPS)
211 UPS 2nd Day Air A.M. ProShip (UPS)
212 UPS 2nd Day Air ProShip (UPS)
213 UPS 3 Day Select ProShip (UPS)
214 UPS Ground ProShip (UPS)
215 UPS Standard to Canada ProShip (UPS)
216 UPS Worldwide Expedited ProShip (UPS)
217 UPS Worldwide Express ProShip (UPS)
218 UPS Worldwide Express Plus ProShip (UPS)
219 USPS 1st Class Mail Single Piece ProShip (USPS)
220 USPS Priority Mail ProShip (USPS)
221 USPS Parcel Post ProShip (USPS)
222 USPS Media Mail Single Piece ProShip (USPS)
223 USPS Bound Printed Matter Single Piece ProShip (USPS)
224 USPS Express Mail PO to Consignee ProShip (USPS)
Appendix B 173
225 USPS Global Express Guaranteed ProShip (USPS)
226 USPS Global Express Mail ProShip (USPS)
227 USPS Int Surface Letter Post ProShip (USPS)
228 USPS Int Airmail Letter Post ProShip (USPS)
229 USPS M-Bag Airmail ProShip (USPS)
230 USPS M-Bag Surface ProShip (USPS)
231 USPS M-Bag Books Sheet Music ProShip (USPS)
232 USPS International Airmail Parcel Post ProShip (USPS)
233 USPS International Surface Parcel Post ProShip (USPS)
234 USPS Library Mail Single Piece ProShip (USPS)
23 UPS Next Day Air® UPS
24 UPS 2nd Day Air® UPS
25 UPS Ground UPS
26 UPS Worldwide Express SM UPS
27 UPS Worldwide Expedited SM UPS
28 UPS Standard UPS
29 UPS 3 Day Select® UPS
30 UPS Next Day Air Saver® UPS
31 UPS Next Day Air® Early A.M.® UPS
32 UPS Worldwide Express Plus SM UPS
33 UPS 2nd Day Air A.M.® UPS
34 UPS Express Saver SM UPS
139 Express USPS
140 First Class USPS
141 Priority USPS
142 Parcel Post USPS
143 Bound Printed Matter USPS
144 Library Mail USPS
145 Media Mail USPS
Payer Type
The type of Payor specified for billing, i.e. the Billing/PayerType element.
Value Description
1 Sender
2 Recipient
3 Third Party
4 Consignee
5 Invoice
6 FOB Port of Export (FOB)
7 Cost & Freight (CFR)
8 Cost, Insurance & Freight (CIF)
9 Delivered Duty/Tax Unpaid (DDU)
10 Carriage and Insurance Paid (CIP)
11 Carriage Paid (CPT)
12 Delivered at Frontier (DAF)
13 Delivered Ex Quay (DEQ)
14 Delivered Ex Ship (DES)
15 Free Alongside Ship (FAS)
16 Free Carrier (FCA)
17 Delivered Duty Paid, V.A.T. Unpaid (DVU)
Appendix B 174
Terms Of Sale Type
The rights and obligations of each party when it comes to transporting the shipment.
Value Description
1 Free On Board (FOB)
2 Free Carrier (FCA)
3 Cost, Insurance, and Freight paid (CIF)
4 Carriage and Insurance Paid (CIP)
5 Cost and Freight (CFR)
6 Carriage Paid To (CPT)
7 Ex Works (EXW)
8 Delivered Duty Unpaid (DDU)
9 Delivered Duty Paid (DDP)
10 Delivered at Frontier (DAF)
11 Delivered Ex Quay (DEQ)
12 Delivered Ex Ship (DES)
13 Free Alongside Ship (FAS)
Collect On Delivery (C.O.D.) Type
The type of payment that is required when the carrier collects on delivery.
Value Description
1 Non-Guaranteed funds, e.g. Personal Check or Company Check
2 Guaranteed funds, e.g. Cashier's Check or Money Order
Delivery Confirmation
The type of delivery confirmation required.
Value Description
1 No signature
2 Signature required
3 Adult signature required
5 Signature Waiver
Output Types
The type of labels and documents that can be produced when shipping.
Value Description
1 Label
3 COD Label
4 Return Label
5 Commercial Invoice
6 Certificate Of Origin
7 NAFTA Certificate Of Origin
8 Shipper’s Export Declaration
13 International Label 1
14 International Label 2
Appendix B 175
15 No Wood Packaging
16 Wood Packaging
17 Bill Of Lading
18 International Signature Label
19 Pack Slip
20 Mock Invoice
21 Bill Of Lading (No charges)
22 Custom International Document 1
23 Custom International Document 2
24 Custom International Document 3
25 Custom LTL Document 1
26 Custom LTL Document 2
27 Custom LTL Document 3
28 Custom General Document 1
29 Custom General Document 2
30 Custom General Document 3
31 Bill of Lading (No carrier)
33 Bill of Lading (No charges & No carrier)
35 B13A
36 Commercial Invoice (Canada)
37 Radiation Reduction
38 Shippers Letter of Instruction
39 Bill of Lading (VICS)
46 Custom Label 1
47 Custom Label 2
48 Custom Label 3
49 Endicia Custom Declaration Continuation Page
50 Conditional Custom Label 1
51 Conditional Custom Label 2
52 Conditional Custom Label 3
53 Caricom
Output Base Types
The categories of labels and documents that can be produced when shipping.
Value Description
1 Label
2 Proof Of Delivery
3 International Document
4 End Of Day Document
5 Shipment Requisition
6 Placeholder
7 Automatic Processing
8 International Label
9 LTL Document
10 General Document
11 Custom International Document
12 Custom LTL Document
13 Custom General Document
14 Packing
15 Advance Ship Notice
Appendix B 176
Output Formats
The format of labels and documents that can be produced when shipping.
Value Description
1 Image
2 Eltron
3 Zebra
4 Unimark
History States
The state of a shipment or package.
Value Description
-1 Build
0 Generated
1 Processed
2 In Transit
3 Delivered
4 Voided
6 Exception
7 Track Failed
Return Delivery Methods
The type of ConnectShip (UPS) Return Delivery service is being requested.
Value Description
0 Carrier will not pickup the package – the return label will be printed
1 Carrier will make only one attempt to pickup the package
2 Carrier will make up to three attempts to pickup the package
3 Carrier will not pickup the package – carrier responsible for mailing the return label to the
consignee
4 Carrier will not pickup the package – carrier responsible for emailing the return label to the
consignee
Rate Shop Filter Modes
The type of filtering that is applied to rates of a rate shop response.
Value Description
0 No filtering is applied. All rates will be returned
1 Return the cheapest rate only
2 Return the cheapest rate that meets the required date/time value.
Appendix B 177
APPENDIX B – LIMITATIONS BY VERSION
This table details the any known limitations of Shipment Server versions.
Version Limitation
5.5.2 End Of Day List and End Of Day Action are only operational for ConnectShip (UPS) carrier.
Top Related