Resource Objects for the Shipping and Accounts APIs¶
This page describes common JSON objects used by the Shipping and Accounts APIs. For objects not listed here, see the specific API operation.
Object |
Description |
---|---|
An address associated with the shipment, such as the origin or destination. |
|
Customs-clearance information. |
|
Customs-clearance information. |
|
Customs-clearance information. |
|
Parcel dimensions. |
|
The shipment documents, including the label. |
|
The end-of-day form that lists all parcels or shipments. |
|
The shipper. Each merchant is uniquely identified by the value of the |
|
The physical characteristics of a parcel. |
|
The shipment’s service, special services, parcel type, and dimensions. In a response, this object also includes the shipment’s charges. |
|
The high-level object that includes all the information about a shipment. |
|
The special services applied to the shipment. |
|
Detailed information associated with a transaction. |
Address Object¶
The Address object contains the origin or destination address for a parcel.
Important
For the required fields in this object, see the Considerations section on the API request’s documentation page.
Name |
Data Type |
Description |
---|---|---|
addressLines |
Array[String] |
Conditional. Street address or P.O. Box. Include apartment number, if applicable. You can specify up to 3 address lines. To determine if this field is required, see the Considerations section on the API request’s documentation page. For USPS® domestic shipments: ensure that the street address is specified as the last of the 3 address lines. This way, the street address is printed right above the city, state, and postal code, per USPS label guidelines. |
cityTown |
String |
Conditional. The city or town. To determine if this field is required, see the API request’s documentation page. |
stateProvince |
String |
Conditional. The state or province. For a US or Canadian address, use the 2-letter state or province code. To determine if this field is required, see the API request’s documentation page. |
postalCode |
String |
Conditional. The postal code or ZIP code. To determine if this field is required, see the API request’s documentation page. For US addresses, use either the 5-digit or 9-digit ZIP code in one of the following formats:
If you use a different format, such as |
countryCode |
String |
Conditional. Two-character country code from the ISO country list. To determine if this field is required, see the API request’s documentation page. |
company |
String |
Conditional. The name of the company. To determine if this field is required, see the API request’s documentation page. |
name |
String |
Conditional. The first and last name. To determine if this field is required, see the API request’s documentation page. |
phone |
String |
Conditional. The phone number. Enter the digits with or without spaces or hyphens. When used for Pickups, the maximum is 10 digits. To determine if this field is required, see the API request’s documentation page. |
String |
Conditional. The email address. To determine if this field is required, see the API request’s documentation page. |
|
residential |
Boolean |
Conditional. Indicates whether this is a residential address. Pitney Bowes recommends including this parameter to improve address verification. This field is required for APAC Services. |
deliveryPoint |
String |
The 2-digit USPS domestic delivery point, when available. |
carrierRoute |
String |
The last four characters of the USPS domestic carrier route code. The carrier route is the area served by a particular USPS mail carrier. The full carrier route code is a nine-character string comprising the five-digit postal code appended by these four characters. |
taxId |
String |
Pickup Request Only. Tax identification number. This is optional for pickup requests. |
status |
String |
RESPONSE ONLY. This field applies to the Validate Address and Suggest Addresses APIs. The field indicates whether the submitted address is valid and whether the API made changes to the address. Possible values are:
|
Customs Object¶
Name |
Data Type |
Description |
---|---|---|
customsInfo |
Customs clearance information used to fill out a commercial invoice. |
|
customsItems |
Array[Customs Items Object] |
Customs clearance information about each commodity. |
Customs Info Object¶
Name |
Data Type |
Description |
---|---|---|
certificateNumber |
String |
The certificate number associated with the commodity. |
comments |
String |
Free form comments regarding the exported shipment entered by the shipper. |
currencyCode |
String |
Required. The type of currency used for the monetary values in this API request. Use three uppercase letters, per ISO 4217. For example, use CBDS Requirement: For the Create CBDS Shipment API, set this field as follows: For U.S. outbound, |
businessType |
String |
CBDS Quotes API Only. Enter the type of transaction. Valid values are:
|
customsDeclaredValue |
BigDecimal |
Conditional. Enter the value to declare in customs for the shipment. Enter the value in the currency specified in the This field is required for FedEx. Do not use this field for PB Expedited. |
EELPFC |
String |
Conditional. A number provided by the Automated Export System (AES). This field is required if the item is valued at more than $2,500 USD per Schedule B export codes. |
firstMileInsuredAmount |
BigDecimal |
CBDS Quotes API Only. For merchants who use a Drop-Off delivery solution, enter the insurance fee associated with bringing the parcel to the Pitney Bowes facility, if applicable. The value is used in the duty-and-tax calculation for countries that include the fee in the calculation. |
firstMileShippingAmount |
BigDecimal |
CBDS Quotes API Only. For merchants who use a Drop-Off delivery solution, enter the shipping cost associated with bringing the parcel to the Pitney Bowes facility. The value is used in the duty-and-tax calculation for countries that include the cost in the calculation. |
freightCharge |
BigDecimal |
FedEx Only. For merchants who ship with FedEx, this field prints a freight charge on the FedEx Commercial Invoice. This field is optional. Note: If this field appears in the response for a carrier other than FedEx, it will have a value of 0.0 and can be ignored. |
fromCustomsReference |
String |
Free form reference information provided by the requestor of the shipment. Depending on the carrier this information may or may not be rendered on the customs documents. |
handlingCosts |
BigDecimal |
FedEx Only. For merchants who ship with FedEx, this field prints a handling charge on the FedEx Commercial Invoice. This field is optional. Note: If this field appears in the response for a carrier other than FedEx, it will have a value of 0.0 and can be ignored. |
importerCustomsReference |
String |
Conditional. A reference number used by the importer, such as a VAT number, PO number, or insured number. Shipments to the EU: Merchants shipping to the European Union (EU) from outside the EU must provide a VAT or IOSS number. Enter the number in this field and specify the reference type in the Shipments to Brazil: This field is required. Use this field to provide the Importer’s Tax Identification (ID) Number. Brazil requires the Tax ID for all imports. Items missing the Tax ID are subject to return. If using the First-Class Package International Service ( |
importerCustomsReferenceType |
String |
Conditional. If you entered a VAT or IOSS number in the
|
insuredAmount |
BigDecimal |
CBDS & FedEx Only. Conditional. Enter the insurance fee, if applicable. This field is used as follows:
Note: If this field appears in the response for a carrier other than the above, it will have a value of |
insuredNumber |
String |
If the sender wishes to insure the contents, they complete an insurance receipt and affix the insured numbered label to the package. The insured number label is what this field represents. |
invoiceNumber |
String |
The commercial invoice number assigned by the exporter. |
licenseNumber |
String |
The export license number associated with the commodity. |
otherCharge |
BigDecimal |
FedEx Only. For merchants who ship with FedEx, this field prints any additional charges on the Commercial Invoice, other than those entered in the Note: If this field appears in the response for a carrier other than FedEx, it will have a value of 0.0 and can be ignored. |
packingCosts |
BigDecimal |
FedEx Only. For merchants who ship with FedEx, this field prints a packing charge on the FedEx Commercial Invoice. This field is optional. Note: If this field appears in the response for a carrier other than FedEx, it will have a value of 0.0 and can be ignored. |
portOfClearance |
String |
CBDS Quotes API Only. Conditional. If the port of clearance for a shipment is different from the country of destination, enter the two-character ISO country code for the port of clearance. For example, enter If the port of clearance and destination country are the same, leave this field blank. This field is required if the port of clearance is different from the country of destination and if the merchant uses the CBDS digital-only solution (i.e., does not ship via CBDS). |
reasonForExport |
String |
Conditional. The reason the commodity is being exported. Valid values are:
This field is required by Note: For USPS First-Class Mail International ( |
reasonForExportExplanation |
String |
Conditional. The reason the commodity is being exported. This field is required for PB Expedited if the |
sdrValue |
BigDecimal |
When an international parcel is insured, the insured value must be expressed in Special Drawing Rights values. E.g. $100 USD = 66.87 SDR. |
shippingAmount |
BigDecimal |
CBDS Quotes API Only. Conditional. Enter the end-to-end shipping cost. Enter the cost in the currency specified in the |
shippingDocumentType |
String |
UPS Only. |
termsOfSale |
String |
UPS Only. |
Customs Items Object¶
The following table lists the fields alphabetically.
Name |
Data Type |
Description |
---|---|---|
brand |
String |
CBDS Only. The manufacturer’s brand name for the item. The maximum length is 255 characters. |
categories |
Array[Categories Object] |
CBDS Only. Conditional. Associated categories. The merchant’s category tree must have been provided to Pitney Bowes in advance. Do not use this array if the merchant did not provide a category tree. This field is required by the HS Code API. |
condition |
String |
CBDS Only. Condition of the commodity. If the merchant is using an eBay-specific category tree, enter the eBay item’s conditionId. Otherwise use one of the following values:
|
description |
String |
Required. A detailed description of the commodity. For CBDS, make the description as detailed as possible to facilitate assignment of the correct HS code. |
eccn |
String |
CBDS Only. The Export Control Classification Number (ECCN) for the commodity. The maximum length is 10 characters. |
hazmats |
Array[String] |
CBDS Only. For a HAZMAT-flagged item, enter one or more of the HAZMAT classifications listed here. |
hSTariffCode |
String |
Conditional. The destination country’s tariff-classification number for the commodity. Most countries use the six-digit Harmonized System (HS) as the basis for their tariff classifications and add additional digits for more detail. The maximum length is 14 characters. This field is required for the Shopping Cart Quotes API. If you are using the Predicted HS Code API, you can supply the HS code from another country in this field to help with the prediction. See the instructions in the API’s Considerations. |
hSTariffCodeCountry |
String |
CBDS Only. Conditional. The two-character ISO Country Code for the country supplying the HS code. This is usually the destination country. This field is required if the |
identifiers |
Array[Object] |
CBDS Only. Additional identifiers for the item. Each object in the array defines a type of identifier and its value. |
identifiers.source |
String |
CBDS Only. The type of identifier, such as |
identifiers.number |
String |
CBDS Only. The value of the identifier. Enter a String of up to 50 characters. This field is required by the |
imageURL |
Array[String] |
CBDS Only. Enter one or more URLs that link to an image of the commodity. Enter the URLs as Strings, separated by commas. |
itemDimension |
CBDS Only. The dimensions for a single item. To enter dimensions, see the Dimension Object. |
|
itemId |
String |
CBDS Only. Required. The merchant’s unique identifier for the commodity, such as the SKU. The maximum length is 50 characters. |
manufacturer |
String |
CBDS Only. The manufacturer of the item. The maximum length is 255 characters. |
netCostMethod |
String |
UPS Only. |
originCountryCode |
String |
Conditional. The two-character ISO country code of the shipment’s origin country. Use ISO 3166-1 alpha-2 standard values. This field is required by FedEx and UPS. |
originStateProvince |
String |
UPS Only. |
preferenceCriterion |
String |
UPS Only. |
pricing |
Object |
CBDS Only. The pricing information for the commodity. If the information is not in the shopping cart, then this information is used. |
pricing.price |
BigDecimal |
CBDS Only. List price of the item. |
producerAddress |
UPS Only. |
|
producerDetermination |
String |
UPS Only. |
producerId |
String |
UPS Only. |
quantity |
Integer |
Required, except for the HS Code API. Enter the total number of items of this type of commodity. For PB Expedited (USPS), the number of items cannot exceed 9999. USPS limits the number of items of one commodity to 9999. Note: This field is optional for the HS Code API. |
quantityUOM |
String |
FedEx, UPS Only. Required. The 1-to-3 character code for the unit of measurement, such as |
unitPrice |
BigDecimal |
Required. The price of one item of this type of commodity. |
unitWeight |
Object |
Required, except for CBDS. The weight and unit of measure of one item of the commodity. Note: This field is optional for CBDS. |
unitWeight.weight |
Number |
The weight of the item. This field is required by the |
unitWeight.unitOfMeasurement |
String |
The unit of measurement. This field is required by the |
url |
String |
CBDS Only. Required. Enter the commodity’s URL on the merchant site. Ensure the URL works. Providing an accurate URL helps Pitney Bowes assign the correct HS code. The maximum length for this field is 1000 characters. |
Dimension Object¶
Name |
Data Type |
Description |
---|---|---|
length |
BigDecimal |
Required. The longest dimension. Entering Dimensions: In the Dimension object, enter length as the longest dimension, height as next longest, and width as shortest. If you enter dimensions differently, the API will reassign them accordingly. For example, if you have a parcel that measures 6 x 4 x 1 inches, and if you assign 1 inch to the height: "length": "6.0", "width": "4.0", "height": "1.0"
The API will reassign the values to assign 1 inch to the width: "length": "6.0", "width": "1.0", "height": "4.0"
|
height |
BigDecimal |
Required. The second longest dimension. Height helps determine a parcel’s girth. For the order of dimensions, see Entering Dimensions above. |
width |
BigDecimal |
Required. The smallest dimension. Width helps determine a parcel’s girth. Note: If you do not set width to the smallest dimension, the APIs will automatically reassign the dimension values to ensure width is set to the smallest dimension. See Entering Dimensions above. |
unitOfMeasurement |
String |
Required. The unit of measure. Valid values:
|
irregularParcelGirth |
String |
For a USPS irregular parcel, set this to the girth of the irregular parcel. Girth is twice the sum of the height and width:
For a PB Standard shipment, if you set an irregular parcel girth, then you must set the IS_RECTANGULAR shipment option to |
Documents Object¶
Name |
Data Type |
Description |
---|---|---|
type |
String |
Conditional. The type of document. This field is required for CBDS shipments. Possible values:
|
size |
String |
Conditional. The recommended size of the label. The actual size of a label depends on the carrier. This field is required if the For the valid values for your API call, see the Labels section of the carrier’s reference page. The field’s possible values are listed below, but see the carrier’s reference page for valid values:
|
contentType |
String |
Conditional. Determines whether the API returns the document as a URL or a Base64-encoded string. This field is required for PB Expedited, PB Standard, PB Presort, CBDS, and PMOD. For PMOD, this field is optional if For the valid values for your API operation, see the Labels section of the carrier’s reference page. The field’s possible values are:
|
fileFormat |
String |
Conditional. The file format for the document. This field is required if the For the valid values for your API operation, see the Labels section of the carrier’s reference page. The field’s possible values are:
|
resolution |
String |
PB Expedited & PB Standard Only. The label’s dots per inch (DPI). This field is not required. Unless you need to change the resolution, it is recommended you leave out this field and use the default resolution. This field does not apply to PB Expedited 4X8 labels, PB Expedited
|
printDialogOption |
String |
Conditional. If
The valid values are for this field are:
|
docTab |
Array[Object] |
4X8 Labels Only. In a Create Shipment request, this defines additional information to be printed on the 2-inch Doc Tab of a 4X8 label. For more information, see How do I print a Doc Tab label? |
docTab.name |
String |
The field to be printed. This can be an existing field returned by the Create Shipment API or a custom field that you define. Each object in the |
docTab.displayName |
String |
If For example, if you set the following: { "name": "parcelTrackingNumber", "displayName": "Tracking Number" }
The label will display: Tracking Number: <parcelTrackingNumber> where <parcelTrackingNumber> is the value of the parcelTrackingNumber field. If you don’t define a |
docTab.value |
String |
To display a field and value that are not returned by the Create Shipment API, enter the new name in the { "name": "DiscountCode", "value": "JUN40" }
|
contents |
String |
Response Only. When Note: The document is available for 24 hours after it is created. |
pages |
Array[Object] |
Response Only, Shipping Labels Only. When |
pages.contents |
String |
Contains the Base64-encoded string for a page in the shipping label. |
customerData |
PB Standard Returns Only. This object is used to:
|
Documents: Customer Data Object¶
Name |
Data Type |
Description |
---|---|---|
labelDetails |
Array[Object] |
The name-value pairs in this array pass the parameters and values used to print custom barcodes or to perform other custom functions. |
labelDetails.name |
String |
The parameter. |
labelDetails.value |
String |
The parameter’s value. |
Manifest Object¶
Name |
Data Type |
Description |
---|---|---|
carrier |
String |
Required. The carrier to which the manifest applies. For some operations, this field is not present in the response. Valid values:
|
submissionDate |
String |
Required. The date the shipments are to be tendered to the carrier, entered as |
fromAddress |
Conditional. The shipment origin address. Required for:
|
|
inductionPostalCode |
String |
Conditional. Postal code where the shipments are tendered to the carrier. This field does not apply to PB Standard manifests. |
parcelTrackingNumbers |
Array[String] |
Identifies shipments by their tracking numbers. List one or more tracking numbers, separated by commas. Enter each tracking number as a separate String. If the |
parameters |
Array[Object] |
Conditional. Each object in the array defines a different manifest parameter. This field is used only in the request and is not returned in the response. Required for PB Standard Manifests (Closeouts). |
parameters.name |
String |
The name of the manifest parameter. |
parameters.value |
String |
The value of the manifest parameter. |
manifestId |
String |
RESPONSE ONLY. The unique manifest ID. This field is not returned for APAC Services. This field is not returned for APAC Services. |
manifestTrackingNumber |
String |
RESPONSE ONLY. The manifest tracking number. This is returned only if |
documents |
Array[Documents Object] |
RESPONSE ONLY. The manifest. This field is not returned for a PB Standard manifest. |
Manifest Parameters¶
In the Manifest Object, the parameters
array can take the following options:
Parameter |
Description |
---|---|
SHIPPER_ID |
Adds shipments to a manifest by specifying the Shipper ID that was used to create the shipments. For the parameter value, specify the Shipper ID. A merchant’s Shipper ID is found in the Merchant Object’s |
MANIFEST_TYPE |
Specifies the type of manifest. Required if creating a PMOD manifest (PS Form 3152). Valid values are:
|
CLIENT_ID |
PB Standard Only. The merchant’s unique PB Standard client ID assigned when the merchant onboarded with PB Standard. Required for PB Standard manifest requests. If testing an API operation in Sandbox, use the Sandbox value listed on the operation’s documentation page. |
CARRIER_FACILITY_ID_<#>
|
PB Standard Only. Each instance of this parameter specifies the ID of a PB Standard facility for which to close out all corresponding shipments. If this parameter is not specified, all shipments for all facilities are closed out. To specify multiple facilities, create a separate object in the "parameters": [ {
"name": "CARRIER_FACILITY_ID_1",
"value": "1585"
},{
"name": "CARRIER_FACILITY_ID_2",
"value": "1234"
},{
"name": "CARRIER_FACILITY_ID_3",
"value": "6789"
}, ... ]
Important: To close out shipments associated with more than 5 facilities, issue the API call again. To test this parameter in the Sandbox environment, include just one instance of this parameter and use the Sandbox value listed on the operation’s documentation page. If you use just once instance of this parameter, specify the parameter as |
Merchant Object¶
The Merchant object appears only in an API response.
Name |
Data Type |
Description |
---|---|---|
address |
Internal use only. If this field is returned, it is set to |
|
company |
String |
The merchant’s company. |
deactivatedDate |
String |
For an inactive merchant, the date the merchant’s account was deactivated, returned in the ISO 8601 format. For an active merchant, this field is |
developerId |
String |
Your Pitney Bowes developer ID. |
String |
The merchant’s email address. |
|
enterpriseAccount |
String |
An enterprise account number associated with the merchant. |
fullName |
String |
The merchant’s full name. |
merchantCarrierAccounts |
Merchants with Multiple Carriers Only. This array appears in the response of the merchant object only if the merchant has registered additional commercial carrier accounts, other than PB Standard or PB Presort. Each object in this array contains information on a specific carrier account. |
|
merchantStatus |
String |
The merchant’s status. Possible values are:
|
merchantStatusReason |
String |
For an inactive merchant, the reason the merchant was deactivated. For an active merchant, this field is |
merchantType |
String |
Indicates the type of merchant:
|
paymentAccountNumber |
String |
The identifier for the PB Postage Account. |
paymentServicesAccountId |
String |
A UUID that identifies the payment services account used to fund the merchant’s PB Postage Account. The payment services account has the merchant’s payment methods. A merchant can have one or more payment methods. |
paymentServicesAccountIdActive |
Boolean |
If set to |
postalReportingNumber |
String |
The unique ID used to identify the merchant. Note: This value is also the merchant’s Shipper ID. You must specify Shipper ID when creating a shipment. |
registeredDate |
Number |
The date the merchant’s account was created, shown as milliseconds since the Unix Epoch. You can convert the date to human-readable form by rounding from milliseconds to seconds and then using the Unix timestamp conversion algorithm, or by using a web site that converts milliseconds since the Epoch, such as https://currentmillis.com. |
subscriptionAccount |
String |
Any subscription account that the merchant might have. |
paymentMethod |
String |
When returned by the Authorize a Merchant API, this indicates the payment method for the merchant’s PB Postage Account. Possible values are:
|
Merchant Carrier Accounts Object¶
This object is nested in the Merchant Object.
Name |
Data Type |
Description |
---|---|---|
accountNumber |
String |
The merchant’s account number with the carrier. |
carrierName |
String |
The carrier. Possible values:
|
deactivationDate |
Number |
If the merchant has removed the carrier account, this field is set to the date that the carrier account was removed. If the carrier account is still active, this field is set to |
isActive |
Boolean |
If |
isAuthorized |
Boolean |
If |
merchantCarrierAccountAttributes |
Array[Object] |
The objects in this array display settings that correspond to settings in the merchant’s carrier account. Each object in the array is a name-value pair and contains the following fields:
|
registrationDate |
Number |
The date the merchant’s carrier account was registered with Pitney Bowes, shown as milliseconds since the Unix Epoch. |
shipperCarrierAccountId |
String |
The unique identifier to use when the merchant performs an operation that uses this carrier account. The identifier is passed in the |
Parcel Object¶
Name |
Data Type |
Description |
---|---|---|
Weight |
Weight Object |
Required. The parcel’s weight and unit of measure. |
Weight.weight |
BigDecimal |
Required. The parcel’s weight. |
Weight.unitOfMeasurement |
String |
Required. The unit of measure. Valid values: For USPS shipments, set this to Valid values: |
dimension |
Conditional. Defines the parcel’s dimensions. For the order of dimensions, see the Dimension Object. This field is recommended for all shipments. Entering accurate dimensions helps avoid additional fees or parcels being undelivered. This field is required for the following shipments:
|
|
valueOfGoods |
BigDecimal |
Notates the value of the parcel. Important: This value is independent of any values entered for customs or special services. To declare a value for customs or a special service, you must declare the value in either the |
currencyCode |
String |
ISO Currency Code. Use three uppercase letters, per ISO 4217. For example, for US Dollars use |
Rates Object¶
Name |
Data Type |
Description |
---|---|---|
carrier |
String |
Required. Carrier name. Valid values are:
|
serviceId |
String |
Conditional. The abbreviated name of the carrier-specific service. For abbreviations, see the Services table on the carrier’s reference page. Required for creating a shipment. Optional for rating a parcel. If you use PB Expedited as the carrier:
|
parcelType |
String |
Conditional. The parcel type. For supported parcel types, see the carrier’s reference page. Required for:
Not applicable to the CBDS Checkout Quotes API. |
specialServices |
Array[Special Services Object] |
Conditional. The special services to be applied. For available special services and requirements, see the Special Services table on the carrier’s reference page. Important In a Create Shipment request, including a special service in this array means you intend to apply the special service. This array is not applicable to the CBDS Checkout Quotes API. |
inductionPostalCode |
String |
The postal code where the shipment is tendered to the carrier. If this field is present, the postal code specified here is used instead of the postal code in the This field applies to PB Expedited, PB Presort, PMOD, FedEx, and UPS. |
currencyCode |
String |
Type of currency referenced in the piece price. For example: This field applies to PB Expedited, CBDS, PMOD, FedEx, and UPS. |
dimensionalWeight |
Object |
RESPONSE ONLY, PB Expedited Only. If dimensional (DIM) weight pricing applies, this object lists the DIM weight. If DIM weight does not apply, this object lists This field applies only to PB Expedited and only to the Create Shipment API. This field does not apply to the Rate Shipment API. |
dimensionalWeight.
|
Double |
The calculated DIM weight. To calculate DIM weight, see this FAQ. |
dimensionalWeight.
|
String |
The unit of measure for the calculated DIM weight. Possible values:
|
baseCharge |
Double |
RESPONSE ONLY. The base service charge payable to the carrier, excluding special service charges. If your request includes a shipper rate plan, see this FAQ on how the shipper rate affects this field. Note: This field does not apply to PB Standard. |
totalCarrierCharge |
Double |
RESPONSE ONLY. The total amount payable to the carrier, including special service fees, surcharges, and any international taxes and duties, except as noted below. If your request includes a shipper rate plan, see this FAQ on how the shipper rate affects this field. CBDS: In certain cases, the totalCarrierCharge might not reflect additional surcharges. UPS: In Sandbox, the data UPS supplies for Note: This field does not apply to PB Standard. |
surcharges |
Array[Object] |
RESPONSE ONLY. Additional fees or surcharges for the shipment. Each object in the array defines a surcharge and fee. This field applies to PB Expedited, FedEx, and UPS. |
surcharges.name |
String |
The type of surcharge. For possible surcharges, see the carrier’s reference page. |
surcharges.fee |
Double |
The amount of the surcharge. |
alternateBaseCharge |
Double |
RESPONSE ONLY. If your request includes a shipper rate plan and if the shipper does not have an NSA, this is the base service charge payable by the shipper, excluding special service charges. The rate is based on the plan specified in the If the shipper has an NSA, do not use this field. Use the response’s |
alternateTotalCharge |
Double |
RESPONSE ONLY. If your request includes a shipper rate plan and if the shipper does not have an NSA, this is the total charge payable by the shipper, including special service charges. The rate is based on the plan specified in the If the shipper has an NSA, do not use this field. Use the response’s |
deliveryCommitment |
Object |
RESPONSE ONLY. Time in transit for the shipment. For PB Expedited, see also Pitney Bowes Delivery Guarantee. Note: This field does not apply to PB Standard. |
deliveryCommitment.
|
String |
The minimum number of delivery days. |
deliveryCommitment.
|
String |
The maximum number of delivery days. |
deliveryCommitment.
|
String |
The estimated delivery date and time in the local time of the destination. |
deliveryCommitment.
|
String |
States whether carrier delivery is guaranteed. Possible values:
|
deliveryCommitment.
|
String |
These are carrier specific details that may be provided. |
destinationZone |
String |
RESPONSE ONLY. The destination zone used to determine the rate. The zone is based on the origin address or CBDS Consolidation Center, and on the destination address. This field applies to PB Expedited, CBDS, and PMOD. Note: For CBDS shipments, |
rateTypeId |
String |
RESPONSE ONLY. The type of rate, such as |
linePrice |
BigDecimal |
RESPONSE ONLY. The unit price multiplied by quantity. This field applies to CBDS. |
totalTaxAmount |
BigDecimal |
RESPONSE ONLY. The total tax amount payable to the carrier. This field applies to CBDS, FedEx, and UPS. |
totalDutyAmount |
BigDecimal |
RESPONSE ONLY. The total duty amount payable to the carrier. This field applies to CBDS. |
Shipment Object¶
Name |
Data Type |
Description |
---|---|---|
fromAddress |
Required. Origin address. If you want a different address to appear on the label from the one listed here, see How do I print a return address that is different from the origin address? |
|
toAddress |
Required. Destination address. FedEx, UPS: If you are shipping with FedEx or UPS to Puerto Rico or an international destination, and if the importer is different from the final recipient, this is the address of the importer. Enter the recipient’s address in the |
|
altReturnAddress |
PB Expedited, CBDS Only. Sets the address for parcel returns. Use this in the following situations:
|
|
parcel |
Required. Contains physical characteristics of the parcel. |
|
rates |
Array[Rates Object] |
Required. Specifies the carrier, service, parcel, and other information. In a response, this field also contains the service charges. Important: In a request, the |
documents |
Array[Documents Object] |
Conditional. Defines the label, manifest, or other shipping document created by the API call. In a response, this array provides the URL or Base64 string for a document and in some cases can contain multiple objects. This field is required, except in the following cases:
|
shipmentOptions |
Array[Object] |
Required. Each object in this array defines a shipment option. Specify each option as a name-value pair in the array. The |
shipmentOptions.name |
String |
The name of the shipment option. |
shipmentOptions.value |
String |
The value of the shipment option. |
customs |
Object |
Conditional. For shipments that use customs forms, this object contains the customs information. This field is required for the following carriers in the following situations:
|
customs.customsInfo |
Customs clearance information for the commercial invoice. When using the Customs Info Object, make sure to include the fields marked Required. |
|
customs.customsItems |
Array[Customs Items Object] |
Customs clearance information for each commodity. When using the Customs Items Object, make sure to include the fields marked Required. The maximum number of objects in this array is 30. |
domesticShipmentDetails |
CBDS Only. Required if the merchant prints the first-mile label prior to invoking the Create CBDS Shipment API. This object contains information about the first-mile leg of the shipment. |
|
soldToAddress |
FedEx, UPS Only. The final recipient of a the shipment. Required for a shipment from the U.S. to Puerto Rico or to an international destination. Otherwise optional. This address must match the If the final recipient’s address is the same as the importer’s address, the entries in the |
|
shipmentType |
String |
Return Labels Only. Set this to |
references |
Array[Object] |
PB Standard, CBDS Only. Conditional. The merchant’s reference fields. Each object in the array includes a name-value pair that defines a reference field. This array applies only to the following two carriers:
To pass references for carriers other than the above, see Reference Fields. |
references.name |
String |
PB Standard, CBDS Only. The name of the reference field. |
references.value |
String |
PB Standard, CBDS Only. The value for the reference field. |
hazmatDetails |
PB Standard Only. If shipping hazardous materials with PB Standard, use this object. |
|
carrierPayments |
FedEx, UPS Only. Indicates that one or more of the shipment costs should be charged to a third-party account. |
|
shipmentId |
String |
RESPONSE ONLY. Unique identifier for the shipment, generated by the system in response to shipment purchase. |
parcelTrackingNumber |
String |
RESPONSE ONLY. Tracking number assigned to the shipment by the system. |
Shipment: Carrier Payments Object¶
Name |
Data Type |
Description |
---|---|---|
accountNumber |
String |
The account number with the carrier of the party responsible for the specified charge. The charge is specified in the |
countryCode |
String |
The country code of the party responsible for the charge. |
party |
String |
The role of the party responsible for the charge. Possible values:
|
postalCode |
String |
The postal code of the party responsible for the charge. |
typeOfCharge |
String |
The type of charge for which the party will be billed. Possible values:
|
Special Services Object¶
Name |
Data Type |
Description |
---|---|---|
specialServiceId |
String |
Required. The abbreviated name of the special service to be applied. For abbreviations, see the Special Services table on the carrier’s reference page. Important Do not include a special service unless you intend to apply it. |
inputParameters |
Array[Object] |
Conditional. The parameters to set for the special service, such as an insurance value or a receipt-number format. This is required if the special service requires input parameters. If a special service does not require input parameters, you can either leave out the array or pass an empty array. To determine the available parameters for a special service, see the instructions for your carrier:
|
inputParameters.name |
String |
The name of the input parameter. This field is required in the For PB Expedited, this maps to the |
inputParameters.value |
String |
The value of the parameter. This field is required in the For PB Expedited, the possible values are listed in the |
fee |
Double |
RESPONSE ONLY. The amount of fee expressed in the currency of the origin country. |
Transaction Object¶
The Transaction object appears only in an API response.
Name |
Data Type |
Description |
---|---|---|
transactionId |
String |
The ID used to uniquely identify the shipment associated with the transaction. The ID is a combination of the developer ID and the shipment’s <Developer-ID>_<X-PB-TransactionId>
|
transactionDateTime |
String |
The date and time of the transaction, returned in UTC/GMT using the ISO 8601 standard. |
transactionType |
String |
Type of transaction. Valid values:
|
developerName |
String |
Name of the developer account used to print the shipment label. |
developerId |
String |
The developer ID used to print the shipment label. |
developerPostagePaymentMethod |
String |
The developer’s PB Postage Account payment method. This is populated only for transactions that use the Bulk Postage Account payment model, as described in Merchant Enrollment Models. |
developerRatePlan |
String |
Rate plan of the developer. |
developerRateAmount |
String |
Amount charged to the developer. The amount is based on the developer’s rate plan. If the merchant (shipper) has an NSA, the amount is instead based on the NSA. APV Adjustments: If the transaction is an APV adjustment, this field is the difference between the charge that was calculated at the time of print and the charge calculated by USPS®. |
developerPostagePaymentAccountBalance |
String |
This field is not currently used. |
merchantName |
String |
Name of the merchant. |
merchantId |
String |
The value of the |
merchantPostageAccountPaymentMethod |
String |
The merchant’s PB Postage Account payment method. This is populated only for transactions that use the Individual Postage Account payment model, as described in Merchant Enrollment Models. |
merchantRatePlan |
String |
Rate plan of the merchant (shipper). |
merchantRate |
String |
Amount charged to the merchant. This is based on the merchant’s shipper rate plan. APV Adjustments: If the transaction is an APV adjustment, this field is the difference between the charge to the merchant calculated at the time of print and the charge calculated based on information from USPS. |
shipperPostagePaymentAccountBalance |
String |
Postage balance in the merchant’s PB Postage Account. This is the ending balance after this transaction was processed. If the merchant’s postage balance is currently negative, the merchant must refill the postage account. See How do I fill my PB Postage Account with funds? |
labelFee |
String |
Currently not used. |
parcelTrackingNumber |
String |
Tracking number. |
weightInOunces |
String |
Weight in ounces. In the case of an APV adjustment, this is based on the new information received from USPS. |
zone |
String |
Zone. In the case of an APV adjustment this is based on the new information received from USPS. |
packageLengthInInches |
String |
Package length in inches. In the case of an APV adjustment, this is based on the new information received from USPS. |
packageWidthInInches |
String |
Package width in inches. In the case of an APV adjustment, this is based on the new information received from USPS. |
packageHeightInInches |
String |
Package height in inches. In the case of an APV adjustment, this is based on the new information received from USPS. |
packageTypeIndicator |
String |
Indicates whether cubic pricing was used. Valid values:
In the case of an APV adjustment, this is based on the new information received from USPS. |
packageType |
String |
The parcel type. For supported parcel types, see the carrier’s reference page. In the case of an APV adjustment, this is based on the new information received from USPS. |
mailClass |
String |
Mail class or service. |
internationalCountryGroup |
String |
International country group code. |
originationAddress |
String |
Origination address. |
originZip |
String |
Origin postal code. |
destinationAddress |
String |
Destination address. |
destinationZip |
String |
Destination postal code. |
destinationCountry |
String |
Destination country. |
postageDepositAmount |
String |
Postage deposit amount. |
creditCardFee |
String |
Credit card fee. |
refundStatus |
String |
Refund status. Possible values include:
For more information on refunds, see Refunds FAQs. |
refundDenialReason |
String |
The reason for a refund denial. |
printStatus |
String |
For a PB Expedited Returns label, the label’s status. Possible values:
Note: This information also appears in the status field. |
shipmentId |
String |
The unique identifier for the shipment generated when the shipment was created. |
refundRequestor |
String |
Indicates who requested the refund.
|
externalId |
String |
Applies only to the following:
|
adjustmentReason |
String |
APV Only. The reason for an APV adjustment, based on information received from USPS. Possible values are:
|
meterNumber |
String |
Internal identification number for the postage meter that was used. |
dimensionalWeightOz |
BigDecimal |
The dimensional weight, if applicable. To return this field, set the |
valueOfGoods |
BigDecimal |
The value provided in the To return this field, set the |
specialServices |
Array[Special Services Object] |
This array contains the shipment’s special services, including the fee paid for each service. To return this field, set the |
status |
String |
The transaction status for the following types of transactions:
|
description |
String |
Details on the status of an ACH transaction. Possible values:
|
clientFacilityId |
String |
For a PB Standard transaction, this is the ID that was assigned to the merchant’s facility during onboarding with PB Standard. |
carrierFacilityId |
String |
For a PB Standard transaction, this is the ID of the PB Standard facility that was assigned to the merchant during onboarding with PB Standard. |
inductionPostalCode |
BigDecimal |
The postal code where the shipment was tendered to the carrier. To return this field, set the |
tracking |
Object |
For a Note: This object is not returned by the Get Archived Reports API. |
tracking.parcelStatus |
String |
The most recent tracking event within 30 days of the parcel’s ship date. This is the same information returned in the Note: Transaction Reports record tracking status only for the first 30 days after the parcel’s ship date. |
tracking.statusDate |
String |
The local date and time where the tracking event occurred. This is the same information returned in |
customMessage1 |
String |
The message specified in the PRINT_CUSTOM_MESSAGE_1 shipment option in the Create Shipment request. To return this field, set the |
customMessage2 |
String |
The message specified in the PRINT_CUSTOM_MESSAGE_2 shipment option in the Create Shipment request. To return this field, set the |