eBay Trading APIVersion 1085

GetItemShipping

Use this call to retrieve the shipping cost estimates for every calculated shipping service that the seller has offered with an item listing. This is analogous to the Shipping Calculator seen in both the buyer and seller web pages.

GetItemShipping is another way for a buyer or seller to obtain shipping cost information for an existing item. The caller can be either the buyer or seller and the call can be made at any point in the life of the listing, either before or after a buyer has committed to purchasing the item(s).

This call enables the user to determine the costs associated with a particular shipping service for an item shipped to a specific postal code.

Be aware that it's possible for a seller to offer a shipping service which turns out to be a mismatch in some way with the item(s) being shipped. For example, if a buyer purchases more than one of an item, the weight might be too great for First Class mail. In such a case, GetItemShipping will omit that shipping service from the response.

Usage Details

GetItemShipping retrieves shipping costs for an item based on the postal code to which the seller is shipping (or may ship) the item. Specify the destination postal code in the DestinationPostalCode property. Identify the item for which to retrieve shipping costs in the ItemID property. (The seller's postal code is automatically extracted from the data associated with this item to provide the from and to locations in calculating the shipping costs.)

If the item has already sold, specify the number of items the buyer purchased from the listing in the QuantitySold property. The quantity sold is used with the final item price the buyer paid to calculate insurance fees. The final price is retrieved automatically from the data associated with the item specified in the ItemID property.

Testing GetItemShipping

You can test GetItemShipping in the Sandbox. GetItemShipping may be called at any time during the life span of an auction; either before or after a buyer has committed to purchasing the item(s). With this, you must have an item listed in the Sandbox environment before you can test GetItemShipping.

For a complete test suite, consider creating several items that represent combinations of details. For example, create:

Related Information

See Determining Shipping Costs for a Listing.



Input

See also Samples.

The box below lists all fields that could be included in the call request. To learn more about an individual field or its type, click its name in the box (or scroll down to find it in the table below the box).

See also the Deprecated Objects link above. Fields presented in this color are deprecated, and fields presented in this color are (or soon will be) non-operational.

The XML prototype does not include requester credentials. This is a documentation limitation only (see Standard Requester Credentials for Making Calls).

<?xml version="1.0" encoding="utf-8"?>
<GetItemShippingRequest xmlns="urn:ebay:apis:eBLBaseComponents">
  <!-- Call-specific Input Fields -->
  <DestinationCountryCode> CountryCodeType </DestinationCountryCode>
  <DestinationPostalCode> string </DestinationPostalCode>
  <ItemID> ItemIDType (string) </ItemID>
  <QuantitySold> int </QuantitySold>
  <!-- Standard Input Fields -->
  <ErrorLanguage> string </ErrorLanguage>
  <MessageID> string </MessageID>
  <OutputSelector> string </OutputSelector>
  <!-- ... more OutputSelector values allowed here ... -->
  <Version> string </Version>
  <WarningLevel> WarningLevelCodeType </WarningLevel>
</GetItemShippingRequest>
Argument Type Occurrence Meaning
Call-specific Input Fields [Jump to standard fields]
DestinationCountryCode CountryCodeType Conditional The destination country code is supplied in this field. GetItemShipping requires the destination of the shipment. Some countries will require both the DestinationPostalCode and the lt;b>DestinationCountryCode, and some countries will accept either one or the other.

Two-digit country codes can be found in CountryCodeType.
Default: US.

Applicable values: See DestinationCountryCode.
DestinationPostalCode string Conditional The destination postal code (or zip code for US) is supplied in this field. GetItemShipping requires the destination of the shipment. Some countries will require both the DestinationPostalCode and the lt;b>DestinationCountryCode, and some countries will accept either one or the other.
ItemID ItemIDType (string) Required The unique identifier of the listing for which to retrieve estimated shipping costs for all offered shipping service options. The ItemID value passed into this field should be for an listing that offers at least one calculated shipping service option, and for an item that has yet to be shipped.
Max length: 19 (Note: Currently, Item IDs are usually 9 to 12 digits).
QuantitySold int Optional This field is used to specify the quantity of the item. The QuantitySold value defaults to 1 if not specified. If a value greater than 1 is specified in this field, the shipping service costs returned in the response will reflect the expense to ship multiple quantity of an item.
Standard Input Fields  
ErrorLanguage string Optional Use ErrorLanguage to return error strings for the call in a different language from the language commonly associated with the site that the requesting user is registered with. Specify the standard RFC 3066 language identification tag (e.g., en_US).

ID Country
en_AU Australia
de_AT Austria
nl_BE Belgium (Dutch)
fr_BE Belgium (French)
en_CA Canada
fr_CA Canada (French)
zh_CN China
fr_FR France
de_DE Germany
zh_HK Hong Kong
en_IN India
en_IE Ireland
it_IT Italy
nl_NL Netherlands
en_SG Singapore
es_ES Spain
de_CH Switzerland
en_GB United Kingdom
en_US United States

See Tags for the Identification of Languages.

MessageID string Optional Most Trading API calls support a MessageID element in the request and a CorrelationID element in the response. If you pass in a MessageID in a request, the same value will be returned in the CorrelationID field in the response. Pairing these values can help you track and confirm that a response is returned for every request and to match specific responses to specific requests. If you do not pass a MessageID value in the request, CorrelationID is not returned.

Note: GetCategories is designed to retrieve very large sets of metadata that change once a day or less often. To improve performance, these calls return cached responses when you request all available data (with no filters). When this occurs, the MessageID and CorrelationID fields aren't applicable. However, if you specify an input filter to reduce the amount of data returned, the calls retrieve the latest data (not cached). When this occurs, MessageID and CorrelationID are applicable.
OutputSelector string Optional,
repeatable: [0..*]
You can use the OutputSelector field to restrict the data returned by a call. This field can make the call response easier to manage, especially when a large payload is returned. If you use the OutputSelector field, the output data will only include the field(s) you specified in the request, as well as all of its child fields (if a field is a container) and its parent fields (if any). Note that it is possible that a field included through an OutputSelector field may still not be returned if it is not applicable, or if it is not found based on other criteria set up in the request payload.

For example, if you are using GetItem and you only want to retrieve the URL of the View Item page (emitted in ViewItemURL field) and the item's Buy It Now price (emitted in BuyItNowPrice field), you would include two separate OutputSelector fields and set the value for each one as ViewItemURL and BuyItNowPrice as in the following example:

 If the following output selectors are used: 

...
<OutputSelector>ViewItemURL</OutputSelector>
<OutputSelector>BuyItNowPrice</OutputSelector>

...

...the response might look like the following

<Item>
<BuyItNowPrice currencyID="USD">0.0</BuyItNowPrice>
<ListingDetails>
<ViewItemURL>http://www.ebay.com/itm/Tag-Heuer-Mens-Watch/182879833261</ViewItemURL>
</ListingDetails>
</Item>

See Selecting Fields to Retrieve.

Version string Conditional The version number of the API code that you are programming against (e.g., 859). The version you specify for a call has these basic effects:
  • It indicates the version of the code lists and other data that eBay should use to process your request.
  • It indicates the schema version you are using.
You need to use a version that is greater than or equal to the lowest supported version.
For the SOAP API: If you are using the SOAP API, this field is required. Specify the version of the WSDL your application is using.

For the XML API: If you are using the XML API, this field has no effect. Instead, specify the version in the X-EBAY-API-COMPATIBILITY-LEVEL HTTP header. (If you specify Version in the body of an XML API request and it is different from the value in the HTTP header, eBay returns an informational warning that the value in the HTTP header was used instead.)

See:
    Routing the Request (Gateway URLs)
    eBay Schema Versioning Strategy
    Lowest Supported Version

WarningLevel WarningLevelCodeType Optional Controls whether or not to return warnings when the application passes unrecognized or deprecated elements in a request.

An unrecognized element is one that is not defined in any supported version of the schema. Schema element names are case-sensitive, so using WarningLevel can also help you remove any potential hidden bugs within your application due to incorrect case or spelling in field names before you put your application into the Production environment.

WarningLevel only validates elements; it doesn't validate XML attributes. It also doesn't control warnings related to user-entered strings or numbers, or warnings for logical errors.

We recommend that you only use this during development and debugging. Do not use this in requests performed in the Production environment.

Applicable values:

High
(in) The WarningLevel value is set to High if the user wishes to receive warnings when the application passes unrecognized or deprecated elements in an API call request. Setting the WarningLevel value to High is not recommended in a production environment. Instead, it should only be used during the development/debugging stage.
Low
(in) The WarningLevel value is set to Low if the user does not wish to receive warnings when the application passes unrecognized or deprecated elements in an API call request. This is the default value if WarningLevel is not specified in the call request.

See Warning Level.



Output

See also Samples.

The box below lists all fields that might be returned in the response. To learn more about an individual field or its type, click its name in the box (or scroll down to find it in the table below the box).

See also the Deprecated Objects link above. Fields presented in this color are deprecated, and fields presented in this color are not returned (or soon will not be returned) or are not operational (or soon will be non-operational).

<?xml version="1.0" encoding="utf-8"?>
<GetItemShippingResponse xmlns="urn:ebay:apis:eBLBaseComponents">
  <!-- Call-specific Output Fields -->
  <PickUpInStoreDetails> PickupInStoreDetailsType
    <EligibleForPickupInStore> boolean </EligibleForPickupInStore>
  </PickUpInStoreDetails>
  <ShippingDetails> ShippingDetailsType
    <CalculatedShippingRate> CalculatedShippingRateType
      <InternationalPackagingHandlingCosts currencyID="CurrencyCodeType"> AmountType (double) </InternationalPackagingHandlingCosts>
      <OriginatingPostalCode> string </OriginatingPostalCode>
      <PackagingHandlingCosts currencyID="CurrencyCodeType"> AmountType (double) </PackagingHandlingCosts>
      <ShippingIrregular> boolean </ShippingIrregular>
    </CalculatedShippingRate>
    <ChangePaymentInstructions> boolean </ChangePaymentInstructions>
    <CODCost currencyID="CurrencyCodeType"> AmountType (double) </CODCost>
    <ExcludeShipToLocation> string </ExcludeShipToLocation>
    <!-- ... more ExcludeShipToLocation values allowed here ... -->
    <InternationalShippingServiceOption> InternationalShippingServiceOptionsType
      <ImportCharge currencyID="CurrencyCodeType"> AmountType (double) </ImportCharge>
      <ShippingInsuranceCost currencyID="CurrencyCodeType"> AmountType (double) </ShippingInsuranceCost>
      <ShippingService> token </ShippingService>
      <ShippingServiceAdditionalCost currencyID="CurrencyCodeType"> AmountType (double) </ShippingServiceAdditionalCost>
      <ShippingServiceCost currencyID="CurrencyCodeType"> AmountType (double) </ShippingServiceCost>
      <ShippingServiceCutOffTime> dateTime </ShippingServiceCutOffTime>
      <ShippingServicePriority> int </ShippingServicePriority>
      <ShipToLocation> string </ShipToLocation>
      <!-- ... more ShipToLocation values allowed here ... -->
    </InternationalShippingServiceOption>
    <!-- ... more InternationalShippingServiceOption nodes allowed here ... -->
    <PaymentEdited> boolean </PaymentEdited>
    <PaymentInstructions> string </PaymentInstructions>
    <SalesTax> SalesTaxType
      <SalesTaxAmount currencyID="CurrencyCodeType"> AmountType (double) </SalesTaxAmount>
      <SalesTaxPercent> float </SalesTaxPercent>
      <SalesTaxState> string </SalesTaxState>
      <ShippingIncludedInTax> boolean </ShippingIncludedInTax>
    </SalesTax>
    <ShippingRateErrorMessage> string </ShippingRateErrorMessage>
    <ShippingRateType> ShippingRateTypeCodeType </ShippingRateType>
    <ShippingServiceOptions> ShippingServiceOptionsType
      <ExpeditedService> boolean </ExpeditedService>
      <FreeShipping> boolean </FreeShipping>
      <ImportCharge currencyID="CurrencyCodeType"> AmountType (double) </ImportCharge>
      <ShippingInsuranceCost currencyID="CurrencyCodeType"> AmountType (double) </ShippingInsuranceCost>
      <ShippingService> token </ShippingService>
      <ShippingServiceAdditionalCost currencyID="CurrencyCodeType"> AmountType (double) </ShippingServiceAdditionalCost>
      <ShippingServiceCost currencyID="CurrencyCodeType"> AmountType (double) </ShippingServiceCost>
      <ShippingServiceCutOffTime> dateTime </ShippingServiceCutOffTime>
      <ShippingServicePriority> int </ShippingServicePriority>
      <ShippingSurcharge currencyID="CurrencyCodeType"> AmountType (double) </ShippingSurcharge>
      <ShippingTimeMax> int </ShippingTimeMax>
      <ShippingTimeMin> int </ShippingTimeMin>
    </ShippingServiceOptions>
    <!-- ... more ShippingServiceOptions nodes allowed here ... -->
    <ShippingType> ShippingTypeCodeType </ShippingType>
  </ShippingDetails>
  <!-- Standard Output Fields -->
  <Ack> AckCodeType </Ack>
  <Build> string </Build>
  <CorrelationID> string </CorrelationID>
  <Errors> ErrorType
    <ErrorClassification> ErrorClassificationCodeType </ErrorClassification>
    <ErrorCode> token </ErrorCode>
    <ErrorParameters ParamID="string"> ErrorParameterType
      <Value> string </Value>
    </ErrorParameters>
    <!-- ... more ErrorParameters nodes allowed here ... -->
    <LongMessage> string </LongMessage>
    <SeverityCode> SeverityCodeType </SeverityCode>
    <ShortMessage> string </ShortMessage>
  </Errors>
  <!-- ... more Errors nodes allowed here ... -->
  <HardExpirationWarning> string </HardExpirationWarning>
  <Timestamp> dateTime </Timestamp>
  <Version> string </Version>
</GetItemShippingResponse>
Return Value Type Occurrence Meaning
Call-specific Output Fields [Jump to standard fields]
PickUpInStoreDetails PickupInStoreDetailsType Conditionally This container is returned in GetItemShipping if In-Store Pickup or Click and Collect is enabled for the listing.

In a future release, a fulfillment duration element will be added to this container and will be used to determine when the item will be ready for pickup in a store (immediately, two hours after sale, two days after sale, etc.).

Note: At this time, the In-Store Pickup and Click and Collect features are generally only available to large retail merchants in the US, and can only be applied to multiple-quantity, fixed-price listings. In-Store Pickup is only available in the US, and Click and Collect is only available on eBay UK, Australia, and Germany sites.
PickUpInStoreDetails
  .EligibleForPickupInStore
boolean Conditionally This field is used in Add/Revise/Relist/Verify calls to enable the listing for In-Store Pickup. To enable the listing for In-Store Pickup, the seller includes this boolean field and sets its value to true. A seller must be eligible for the In-Store Pickup feature to list an item that is eligible for In-Store Pickup. At this time, the In-Store Pickup feature is generally only available to large retail merchants in US, and can only be applied to multiple-quantity, fixed-price listings.

In addition to setting the EligibleForPickupInStore boolean field to true, the merchant must also perform the following actions in an Add/Revise/Relist/Verify call to enable the In-Store Pickup option on a multiple-quantity, fixed-price listing:
  • Have inventory for the product at one or more physical stores tied to the seller's account. By using the REST-based Inventory API, sellers can associate physical stores to their account by using the Create Inventory Location call, and then, using the Create Inventory Item call, they can add inventory to specific stores;
  • Include the seller-defined SKU value of the product(s) in the call request. For a single-variation listing, the SKU value would be specified in the Item.SKU field, and for a multiple-variation listing, the SKU value(s) would be specified in the Item.Variations.Variation.SKU field(s);
  • Set an immediate payment requirement on the item. The immediate payment feature requires the seller to:
    • Include the Item.AutoPay flag in the call request and set its value to true;
    • Include only one Item.PaymentMethods field in the call request and set its value to 'PayPal;
    • Include a valid PayPal payment address in the Item.PayPalEmailAddress field.
When a seller is successful at listing an item with the In-Store Pickup feature enabled, prospective buyers within a reasonable distance (25 miles or so) from one of the seller's stores (that has stock available) will see the "Available for In-Store Pickup" option on the listing, along with information on the closest store that has the item.

Note: A seller must be eligible for the In-Store Pickup feature to list an item that is eligible for In-Store Pickup. At this time, the In-Store Pickup feature is generally only available to large retail merchants in US, and can only be applied to multiple-quantity, fixed-price listings.
ShippingDetails ShippingDetailsType Always This container will be returned if at least one domestic or international shipping service option is available for the item. A ShippingServiceOptions (for domestic shipping) and/or an InternationalShippingServiceOptions container (for international shipping) is returned for each available calculated shipping service option. These shipping service option containers consists of estimated shipping cost and estimated shipping times.

Any error about shipping services (returned by a vendor of eBay's who calculates shipping costs) is returned in ShippingRateErrorMessage. Errors from a shipping service are likely to be related to issues with shipping specifications, such as package size and the selected shipping method not supported by a particular shipping service.
ShippingDetails
  .CalculatedShippingRate
CalculatedShippingRateType Conditionally Details pertinent to one or more items for which calculated shipping has been offered by the seller, such as package dimension and weight and packaging/handling costs. If your call specifies a large-dimension item listed with UPS, see Dimensional Weight limit on UPS shipping services results in failure of shipping calculator.

Note: The CalculatedShippingRate container should only be used to specify values for the InternationalPackagingHandlingCosts, OriginatingPostalCode, and/or PackagingHandlingCosts fields. The rest of the fields in the CalculatedShippingRate container are used to specify package dimensions and package weight, and these values should now be specified in the ShippingPackageDetails container instead.
ShippingDetails
  .CalculatedShippingRate
  .InternationalPackagingHandlingCosts
AmountType (double) Conditionally Fees a seller might assess for the shipping of the item (in addition to whatever the shipping service might charge). Any packaging/handling cost specified on input is added to each shipping service on output.

If domestic and international calculated shipping is offered for an item and if packaging/handling cost is specified only for domestic shipping, that cost will be applied by eBay as the international packaging/handling cost. (To specify a international packaging/handling cost, you must always specify a domestic packaging/handling cost, even if it is 0.) For international calculated shipping only.
ShippingDetails
  .CalculatedShippingRate
  .InternationalPackagingHandlingCosts
  [ attribute currencyID ]
CurrencyCodeType Conditionally Fees a seller might assess for the shipping of the item (in addition to whatever the shipping service might charge). Any packaging/handling cost specified on input is added to each shipping service on output.

If domestic and international calculated shipping is offered for an item and if packaging/handling cost is specified only for domestic shipping, that cost will be applied by eBay as the international packaging/handling cost. (To specify a international packaging/handling cost, you must always specify a domestic packaging/handling cost, even if it is 0.) For international calculated shipping only.

For a list of possible enumeration values, see CurrencyCodeType.
ShippingDetails
  .CalculatedShippingRate
  .OriginatingPostalCode
string Conditionally The postal code for the location from which the package will be shipped. A postal code is required for calculated shipping. This field is not necessary if a postal code is already specified through the Item.PostalCode field. If a postal code is included in both fields, the value in Item.PostalCode field is used, and the value in OriginatingPostalCode is ignored.
ShippingDetails
  .CalculatedShippingRate
  .PackagingHandlingCosts
AmountType (double) Conditionally Fees a seller might assess for the shipping of the item (in addition to whatever the shipping service might charge). Any packaging/handling cost specified on input is added to each shipping service on output.

If domestic and international calculated shipping is offered for an item and if packaging/handling cost is specified only for domestic shipping, that cost will be applied by eBay as the international packaging/handling cost. (To specify a international packaging/handling cost, you must always specify a domestic packaging/handling cost, even if it is 0.) When UPS is one of the shipping services offered by the seller, package dimensions are required on list/relist/revise. For calculated shipping only.
ShippingDetails
  .CalculatedShippingRate
  .PackagingHandlingCosts
  [ attribute currencyID ]
CurrencyCodeType Conditionally Fees a seller might assess for the shipping of the item (in addition to whatever the shipping service might charge). Any packaging/handling cost specified on input is added to each shipping service on output.

If domestic and international calculated shipping is offered for an item and if packaging/handling cost is specified only for domestic shipping, that cost will be applied by eBay as the international packaging/handling cost. (To specify a international packaging/handling cost, you must always specify a domestic packaging/handling cost, even if it is 0.) When UPS is one of the shipping services offered by the seller, package dimensions are required on list/relist/revise. For calculated shipping only.

For a list of possible enumeration values, see CurrencyCodeType.
ShippingDetails
  .CalculatedShippingRate
  .ShippingIrregular
boolean Conditionally Note: The value for ShippingIrregular should now be specified in the ShippingPackageDetails container instead. If the ShippingIrregular field is passed in the CalculatedShippingRate container and in the ShippingPackageDetails container, the value in the ShippingPackageDetails container will take precedence. This field may be deprecated in the future.
This boolean field indicates that the shipping package is considered an irregular shape and/or size by the shipping carrier, and thus requires special handling. For calculated shipping only.
ShippingDetails
  .ChangePaymentInstructions
boolean Conditionally Whether the seller specified payment and shipping instructions during checkout (for example, to update the details of an order). Valid for flat and calculated shipping.
ShippingDetails.CODCost AmountType (double) Conditionally This dollar value indicates the money due from the buyer upon delivery of the item.

This field should only be specified in the request if 'COD' (cash-on-delivery) is a valid payment method for the site and it is included as a PaymentMethods value in the same request.

This field is only returned if set for the listing.

To see if 'COD' is a supported payment method for a site, call GetCategoryFeatures, specifying the listing category ID, and including the FeatureID field set to PaymentMethods. Look for a value of 'CashOnPickup' in one of the Category.PaymentMethod fields in the response.

See Other Shipping Features.

ShippingDetails.CODCost
  [ attribute currencyID ]
CurrencyCodeType Conditionally This dollar value indicates the money due from the buyer upon delivery of the item.

This field should only be specified in the request if 'COD' (cash-on-delivery) is a valid payment method for the site and it is included as a PaymentMethods value in the same request.

This field is only returned if set for the listing.

To see if 'COD' is a supported payment method for a site, call GetCategoryFeatures, specifying the listing category ID, and including the FeatureID field set to PaymentMethods. Look for a value of 'CashOnPickup' in one of the Category.PaymentMethod fields in the response.

For a list of possible enumeration values, see CurrencyCodeType.
ShippingDetails
  .ExcludeShipToLocation
string Conditionally,
repeatable: [0..*]
Use this field to specify an international country or region, or a special domestic location, such as 'PO Box' (in US) or 'Packstation' (in DE), to where you will not ship the associated item. Repeat this element in the call request for each location that you want to exclude as a shipping destination for your item.

Set ShipToRegistrationCountry to true to have your ExcludeShipToLocation settings applied to your listing. The locations you have excluded display in the Shipping and Handling section of your item listing.

If a buyer's primary ship-to location is a location that you have listed as an excluded ship-to location (or if the buyer does not have a primary ship-to location), they will receive an error message if they attempt to buy or place a bid on your item.

The exclude ship-to location values are eBay regions and countries. To see the valid exclude ship-to locations for a specified site, call GeteBayDetails with DetailName set to ExcludeShippingLocationDetails, and then look for the ExcludeShippingLocationDetails.Location fields in the response. Repeat GeteBayDetails for each site on which you list.

This field works in conjunction with Item.ShipToLocations to create a set of international countries and regions to where you will, and will not, ship. You can list a region in the ShipToLocations field, then exclude specific countries within that region with this field (for example, you can specify Africa in ShipToLocations, yet exclude Chad with a ExcludeShipToLocation setting). In addition, if your ShipToLocations is Worldwide, you can use this field to specify both regions and countries that you want to exclude from your shipping destinations.

You can specify a default set of locations to where you will not ship in My eBay. If you create an Exclude Ship-To List, it is, by default, in effect when you list items. However, if you specify any value in this field on input, it nullifies the default settings in your Exclude Ship-To List. (If you use ExcludeShipToLocation when you list an item, you will need to list all the locations to where you will not ship the associated item, regardless of the default settings in your Exclude Ship-To List.)

Specify none in this field to override the default Exclude Ship-To List you might have set up in My eBay and indicate that you do not want to exclude any shipping locations from the respective item listing.

Note: To enable your default Exclude Ship-To List, you must enable Exclude Shipping Locations and Buyer Requirements in your My eBay Site Preferences. For details, see the KnowledgeBase Article HowTo: ExcludeShipToLocation.

Applicable values: See CountryCodeType, ShippingRegionCodeType
ShippingDetails
  .InternationalShippingServiceOption
InternationalShippingServiceOptionsType Conditionally,
repeatable: [0..*]
Shipping costs and options related to an international shipping service. If used, at least one domestic shipping service must also be provided in ShippingServiceOptions.

If you specify multiple InternationalShippingServiceOption nodes, the repeating nodes must be contiguous. That is, you cannot insert other nodes between InternationalShippingServiceOption nodes.

All specified domestic and international shipping services must be the same shipping type (for example, Flat versus Calculated).

A seller can offer up to four domestic shipping services and up to five international shipping services. However, if the seller is opted in to the Global Shipping Program, only four other international shipping services may be offered (regardless of whether or not Global Shipping is offered for the listing).

If you specify ShippingDetails when you revise or relist an item but you omit InternationalShippingServiceOption, eBay will drop the international shipping services (except the Global Shipping Program) from the listing. This may also have unintended side effects, as other fields that depend on this data may be dropped as well. To retain the shipping services and dependent fields when you modify other shipping details, it may be simplest to specify all ShippingDetails that you still want to include in the listing.

For GetItemShipping, results are filtered: if any service is not available in the buyer's region, it is removed. If no services remain after this filtering, a warning is returned.

See Overview of the API Schema for rules regarding repeating instances of a nodes (nodes for which maxOccurs is "unbounded" or is greater than 1).

ShippingDetails
  .InternationalShippingServiceOption
  .ImportCharge
AmountType (double) Conditionally The total cost of customs and taxes for the international leg of an order shipped using the Global Shipping Program. This amount is calculated and supplied for each item by the international shipping provider when a buyer views the item properties.
Min: 0.
ShippingDetails
  .InternationalShippingServiceOption
  .ImportCharge
  [ attribute currencyID ]
CurrencyCodeType Conditionally The total cost of customs and taxes for the international leg of an order shipped using the Global Shipping Program. This amount is calculated and supplied for each item by the international shipping provider when a buyer views the item properties.

For a list of possible enumeration values, see CurrencyCodeType.
ShippingDetails
  .InternationalShippingServiceOption
  .ShippingInsuranceCost
AmountType (double) Conditionally The insurance cost associated with shipping a single item with this shipping service. Exception: for GetItemShipping, this is proportional to QuantitySold. If the item has not yet been sold, insurance information cannot be calculated and the value is 0.00. For calculated shipping only.

Valid only on the following sites: AU, FR, and IT

See Shipping.

ShippingDetails
  .InternationalShippingServiceOption
  .ShippingInsuranceCost
  [ attribute currencyID ]
CurrencyCodeType Conditionally The insurance cost associated with shipping a single item with this shipping service. Exception: for GetItemShipping, this is proportional to QuantitySold. If the item has not yet been sold, insurance information cannot be calculated and the value is 0.00. For calculated shipping only.

Valid only on the following sites: AU, FR, and IT

For a list of possible enumeration values, see CurrencyCodeType.
ShippingDetails
  .InternationalShippingServiceOption
  .ShippingService
token Conditionally An international shipping service being offered by the seller to ship an item to a buyer. For a list of valid values, call GeteBayDetails with DetailName set to ShippingServiceDetails.

To view the full list of International shipping service options in the response, look for the ShippingService fields in the ShippingServiceDetails containers that contain a InternationalService = true field, as this indicates that the ShippingService value is an International shipping service option.

The ShippingServiceDetails.ValidForSellingFlow flag must also be present. Otherwise, that particular shipping service option is no longer valid and cannot be offered to buyers through a listing.

For flat and calculated shipping.

See GeteBayDetails.



Applicable values: See ShippingServiceCodeType
ShippingDetails
  .InternationalShippingServiceOption
  .ShippingServiceAdditionalCost
AmountType (double) Conditionally The cost of shipping each additional item if the same buyer purchases multiple quantity of the same line item. This field is required when creating a multiple-quantity, fixed-price listing. Generally, the seller will give the buyer a shipping discount if that buyer purchases multiple quantity of the item, so this value should usually be less than the value set for ShippingServiceCost.

The value of this field can even be set to 0 if the seller wants to encourage buyers to buy multiple quantity of the item, or it could be that the seller can fit multiple quantities of the line item in a single shipping package, so the seller is just passing this shipping savings onto the buyer. This field is not applicable for single-quantity listings.
ShippingDetails
  .InternationalShippingServiceOption
  .ShippingServiceAdditionalCost
  [ attribute currencyID ]
CurrencyCodeType Conditionally The cost of shipping each additional item if the same buyer purchases multiple quantity of the same line item. This field is required when creating a multiple-quantity, fixed-price listing. Generally, the seller will give the buyer a shipping discount if that buyer purchases multiple quantity of the item, so this value should usually be less than the value set for ShippingServiceCost.

The value of this field can even be set to 0 if the seller wants to encourage buyers to buy multiple quantity of the item, or it could be that the seller can fit multiple quantities of the line item in a single shipping package, so the seller is just passing this shipping savings onto the buyer. This field is not applicable for single-quantity listings.

For a list of possible enumeration values, see CurrencyCodeType.
ShippingDetails
  .InternationalShippingServiceOption
  .ShippingServiceCost
AmountType (double) Conditionally The base cost of shipping the item using the shipping service specified in the ShippingService field. In the case of a multiple-quantity, fixed-price listing, the ShippingServiceAdditionalCost field shows the cost to ship each additional item if the buyer purchases multiple quantity of the same line item.

When returned by GetItemShipping, it includes the packaging and handling cost. For flat and calculated shipping.

If a shipping service has been specified (even LocalPickup), GetItem returns the shipping service cost, even if the cost is zero. Otherwise, cost is not returned.

If this is for calculated shipping for a listing that has not yet ended, note that the cost cannot be determined until the listing has ended and the buyer has specified a postal code.

For GetItemShipping, promotional shipping savings is reflected in the cost, if applicable. If the promotional shipping option is lower than other shipping services being offered, the savings is reflected in the returned shipping cost. The shipping service named Promotional Shipping Service (or whatever is the localized name for it) is included among the shipping services. If the promotional shipping cost is lower than the cost of other shipping services being offered, it is presented first in the list. (The LOWEST shipping service cost is always presented first, regardless of whether there is promotional shipping.)

See Shipping.

ShippingDetails
  .InternationalShippingServiceOption
  .ShippingServiceCost
  [ attribute currencyID ]
CurrencyCodeType Conditionally The base cost of shipping the item using the shipping service specified in the ShippingService field. In the case of a multiple-quantity, fixed-price listing, the ShippingServiceAdditionalCost field shows the cost to ship each additional item if the buyer purchases multiple quantity of the same line item.

When returned by GetItemShipping, it includes the packaging and handling cost. For flat and calculated shipping.

If a shipping service has been specified (even LocalPickup), GetItem returns the shipping service cost, even if the cost is zero. Otherwise, cost is not returned.

If this is for calculated shipping for a listing that has not yet ended, note that the cost cannot be determined until the listing has ended and the buyer has specified a postal code.

For GetItemShipping, promotional shipping savings is reflected in the cost, if applicable. If the promotional shipping option is lower than other shipping services being offered, the savings is reflected in the returned shipping cost. The shipping service named Promotional Shipping Service (or whatever is the localized name for it) is included among the shipping services. If the promotional shipping cost is lower than the cost of other shipping services being offered, it is presented first in the list. (The LOWEST shipping service cost is always presented first, regardless of whether there is promotional shipping.)

For a list of possible enumeration values, see CurrencyCodeType.
ShippingDetails
  .InternationalShippingServiceOption
  .ShippingServiceCutOffTime
dateTime Conditionally The last time of day that an order using the specified shipping service will be accepted by the seller. The cut off time applies and is returned only when the ShippingService field contains the name of a qualifying time-sensitive shipping service, such as eBayNowImmediateDelivery.

The cut off time is set by eBay and determined in part by the policies and locations of the seller and the shipping carrier.
ShippingDetails
  .InternationalShippingServiceOption
  .ShippingServicePriority
int Conditionally This integer value controls the order (relative to other shipping services) in which the corresponding ShippingService will appear in the View Item and Checkout page. Sellers can specify up to five international shipping services (with five InternationalShippingServiceOption containers), so valid values are 1, 2, 3, 4, and 5. A shipping service with a ShippingServicePriority value of 1 appears at the top. Conversely, a shipping service with a ShippingServicePriority value of 5 appears at the bottom of a list of five shipping service options. If the Global Shipping Program is enabled on the listing for international shipping, only four additional shipping services may be specified.

This field is applicable to Flat and Calculated shipping.
ShippingDetails
  .InternationalShippingServiceOption
  .ShipToLocation
string Conditionally,
repeatable: [0..*]
An international location or region to where the item seller will ship the item.

Use GeteBayDetails with DetailName set to ShippingLocationDetails to determine which locations are valid per site. In the GeteBayDetails response, look for the ShippingLocationDetails.ShippingLocation fields.

For the AddItem family of calls, this field is required if any international shipping service is specified.

For GetOrders, GetOrderTransactions, and GetItemTransactions only: If using Trading WSDL Version 1019 or above, ShipToLocation fields will only be returned to the buyer or seller, and no longer returned at all to third parties. If using a Trading WSDL older than Version 1019, ShipToLocation fields are only returned to the buyer or seller, and a string value of Unavailable will be returned to all third parties.

See Specifying Locations to Where You Ship.



Applicable values: See CountryCodeType, ShippingRegionCodeType
ShippingDetails.PaymentEdited boolean Conditionally Whether the seller allows the buyer to edit the payment amount for the order. (Sellers enable this property in their My eBay user preferences on the eBay site.)
ShippingDetails
  .PaymentInstructions
string Conditionally Payment instructions (or message) from the seller to the buyer. These instructions appear on eBay's View Item page and on eBay's checkout page when the buyer pays for the item.

Sellers usually use this field to specify payment instructions, how soon the item will shipped, feedback instructions, and other reminders that the buyer should be aware of when they bid on or buy an item.

This field can be specified regardless of the shipping type eBay only allows 500 characters as input, but due to the way the eBay Web site UI treats characters, this field can return more than 500 characters in the response. Characters like & and ' (apostrophe/single quote) count as 5 characters each. Use DeletedField to remove this value when revising or relisting an item.

Applicable to eBay Motors (usually used to elaborate on the return policy).

Max length: 500.

See:
    Offering a Clear Return Policy
    (AddItem) Item.AttributeSetArray
    (GetItem) Item.AttributeSetArray

ShippingDetails.SalesTax SalesTaxType Conditionally This container shows the sales tax rate percentage for a specific tax jurisdiction. Additionally, it indicates whether or not the seller applies sales tax to shipping charges in addition to the item cost. The concept of 'sales tax' is only applicable to eBay US and Canada (English and French) sites.

This container can be used in an Add/Revise/Relist/Verify call to set sales tax settings for a specific tax jurisdiction, but it is actually a better practice if a user sets up sales tax rates through the Sales Tax Table tool in My eBay (or by using the SetTaxTable call). A seller's Sales Tax Table is applied to the listing by including the UseTaxTable field in the request and setting its value to true. The GetTaxTable call can be used to retrieve the current sales tax rates for different tax jurisdictions.

This container is only returned in order-related 'Get' calls if sales tax is applicable to the order line item.

Note: Beginning January 1, 2019, buyers in some US states will automatically be charged sales tax for eBay purchases. eBay will collect and remit this sales tax to the proper taxing authority on the buyer's behalf. So, if a sales tax rate is established for a state that is subject to 'eBay Collect and Remit', this sales tax rate will be ignored by eBay during checkout process. For a list of the US states that will become subject to 'eBay Collect and Remit' (and effective dates), see the eBay sales tax collection help topic.

See Enabling Multi-jurisdiction Sales Tax.

ShippingDetails.SalesTax
  .SalesTaxAmount
AmountType (double) Conditionally The amount of sales tax calculated for an order based on the item price and the sales tax rate for the buyer's tax jurisdiction.

GetItemTransactions can return incorrect sales tax if the name of a state is not abbreviated (e.g. if the value is "Illinois" rather than "IL") in TransactionArray.Transaction.Buyer.BuyerInfo.ShippingAddress.StateOrProvince. If the name of a state is not abbreviated, sales tax should be obtained by using the OrderLineItemID to call GetOrderTransactions.
ShippingDetails.SalesTax
  .SalesTaxAmount
  [ attribute currencyID ]
CurrencyCodeType Conditionally The amount of sales tax calculated for an order based on the item price and the sales tax rate for the buyer's tax jurisdiction.

GetItemTransactions can return incorrect sales tax if the name of a state is not abbreviated (e.g. if the value is "Illinois" rather than "IL") in TransactionArray.Transaction.Buyer.BuyerInfo.ShippingAddress.StateOrProvince. If the name of a state is not abbreviated, sales tax should be obtained by using the OrderLineItemID to call GetOrderTransactions.

For a list of possible enumeration values, see CurrencyCodeType.
ShippingDetails.SalesTax
  .SalesTaxPercent
float Conditionally This float value is the sales tax percentage rate applicable to the corresponding tax jurisdiction (US state or Canadian province). Sellers are responsible for providing accurate sales tax rates for each jurisdiction. This sales tax rate comes into play when a buyer from that tax jurisdiction makes a purchase from the seller. The value passed in is stored with a precision of 3 digits after the decimal point (##.###).

This field is only returned in order management calls if sales tax applies to the order line item, and is only in GetItem (and other 'Get' calls) if sales tax is applicable to the listing or order line item, and the seller is the person making the call.

Note: Beginning January 1, 2019, buyers in some US states will automatically be charged sales tax for eBay purchases. eBay will collect and remit this sales tax to the proper taxing authority on the buyer's behalf. So, if a sales tax rate is established for a state that is subject to 'eBay Collect and Remit', the sales tax rate in this field is ignored by eBay during checkout process. For a list of the US states that will become subject to 'eBay Collect and Remit' (and effective dates), see the eBay sales tax collection help topic.
ShippingDetails.SalesTax
  .SalesTaxState
string Conditionally This is the unique, two-digit identifier of the tax jurisdiction (such as 'CA' for California). To retrieve all two-digit identifiers for all states/territories/provinces for a site, a seller can either use a GetTaxTable call with DetailLevel set to ReturnAll, or they can use the GeteBayDetails call with DetailLevel name set to TaxJurisdiction. Please note that both GetTaxTable and GeteBayDetails calls use a JurisdictionID field to express these tax jurisdiction identifiers instead of SalesTaxState, but the values used in these fields are the same.

The SalesTaxState field is always required in an Add/Revise/Relist/Verify call, and always returned with each SalesTax container to identify the tax jurisdiction.
ShippingDetails.SalesTax
  .ShippingIncludedInTax
boolean Conditionally This field is included in an Add/Revise/Relist/Verify call and set to true if the seller wants sales tax for the jurisdiction to apply to the cumulative amount of item cost and shipping charges. This value defaults to false if not specified.

This field is always returned with the SalesTax container (whether true or false).

Note: Beginning January 1, 2019, buyers in some US states will automatically be charged sales tax for eBay purchases. eBay will collect and remit this sales tax to the proper taxing authority on the buyer's behalf. So, if a true value is set for this field for a state that is subject to 'eBay Collect and Remit', this setting is ignored by eBay during checkout process. For a list of the US states that will become subject to 'eBay Collect and Remit' (and effective dates), see the eBay sales tax collection help topic.
ShippingDetails
  .ShippingRateErrorMessage
string Conditionally For most applicable calls, returns the words No Error or returns an error message related to an attempt to calculate shipping rates. For calculated shipping only.

The message text explains that a postal code is needed to calculate shipping. Only returned when ItemDetails is set to Fine.
ShippingDetails
  .ShippingRateType
ShippingRateTypeCodeType Conditionally A shipping rate scale for shipping through USPS that affects the shipping cost calculated for USPS (lower if ShippingRateType is DailyPickup). ShippingRateType is returned only if the value of ShippingService is one of the USPS shipping services. For calculated shipping only.

Applicable values: See ShippingRateType.
Code so that your app gracefully handles any future changes to this list.

See Shipping.

ShippingDetails
  .ShippingServiceOptions
ShippingServiceOptionsType Conditionally,
repeatable: [0..*]
Shipping costs and options related to domestic shipping services offered by the seller. Flat and calculated shipping. Required if InternationalShippingServiceOption is specified.

For flat shipping, a maximum shipping cost may apply when listing. See Shipping documentation for details about Maximum Flat Rate Shipping Costs.

If you specify multiple ShippingServiceOptions nodes, the repeating nodes must be contiguous. For example, you can insert InternationalShippingServiceOption nodes after a list of repeating ShippingServiceOptions nodes, but not between them:

<ShippingServiceOptions>...</ShippingServiceOptions>
<ShippingServiceOptions>...</ShippingServiceOptions>
<ShippingServiceOptions>...</ShippingServiceOptions>
<InternationalShippingServiceOption>...</InternationalShippingServiceOption>
<InternationalShippingServiceOption>...</InternationalShippingServiceOption>


If you specify ShippingDetails when you revise or relist an item but you omit ShippingServiceOptions, eBay will drop the domestic shipping services from the listing. This may also have unintended side effects, as other fields that depend on this data may be dropped as well.

To retain the shipping services and dependent fields when you modify other shipping details, it may be simplest to specify all ShippingDetails that you still want to include in the listing.

A seller can offer up to four domestic shipping services and up to five international shipping services. However, if the seller is opted in to the Global Shipping Program, only four other international shipping services may be offered (regardless of whether or not Global Shipping is offered for the listing). All specified domestic and international shipping services must be the same shipping type (for example, Flat versus Calculated).

For GetItemShipping, results are filtered: if any service is not available in the buyer's region, it is removed. If no services remain after this filtering, a warning is returned.

See Overview of the API Schema for rules regarding repeating instances of a nodes (nodes for which maxOccurs is "unbounded" or is greater than 1).

ShippingDetails
  .ShippingServiceOptions
  .ExpeditedService
boolean Conditionally Indicates whether the service is an expedited shipping service.
ShippingDetails
  .ShippingServiceOptions
  .FreeShipping
boolean Conditionally Specifies that the seller wants to offer free shipping. This applies only to the first specified domestic shipping service and is ignored if set for any other shipping service.

If the seller specifies FreeShipping but requires shipping insurance (InsuranceOption = Require), eBay sets the insurance cost to 0.00. However, if shipping insurance is optional and the buyer chooses shipping insurance, eBay preserves the cost of shipping insurance. It is up to the buyer whether to buy shipping insurance, regardless of whether the seller specified FreeShipping.

See Specifying Shipping Services.

ShippingDetails
  .ShippingServiceOptions
  .ImportCharge
AmountType (double) Conditionally The total cost of customs and taxes for the international leg of an order shipped using the Global Shipping Program. This amount is calculated and supplied for each item by the international shipping provider when a buyer views the item properties.
ShippingDetails
  .ShippingServiceOptions
  .ImportCharge
  [ attribute currencyID ]
CurrencyCodeType Conditionally The total cost of customs and taxes for the international leg of an order shipped using the Global Shipping Program. This amount is calculated and supplied for each item by the international shipping provider when a buyer views the item properties.

For a list of possible enumeration values, see CurrencyCodeType.
ShippingDetails
  .ShippingServiceOptions
  .ShippingInsuranceCost
AmountType (double) Conditionally The insurance cost associated with shipping a single item with this shipping service.

Exception: For GetItemShipping, this is proportional to QuantitySold. If the item has not yet been sold, insurance information cannot be calculated and the value is 0.00. For calculated shipping only.

See Determining Shipping Costs for a Listing.

ShippingDetails
  .ShippingServiceOptions
  .ShippingInsuranceCost
  [ attribute currencyID ]
CurrencyCodeType Conditionally The insurance cost associated with shipping a single item with this shipping service.

Exception: For GetItemShipping, this is proportional to QuantitySold. If the item has not yet been sold, insurance information cannot be calculated and the value is 0.00. For calculated shipping only.

For a list of possible enumeration values, see CurrencyCodeType.
ShippingDetails
  .ShippingServiceOptions
  .ShippingService
token Conditionally A shipping service option being offered by the seller to ship an item to a buyer. For a list of valid ShippingService values, call GeteBayDetails with DetailName set to ShippingServiceDetails. The ShippingServiceDetails.ValidForSellingFlow flag must also be present. Otherwise, that particular shipping service option is no longer valid and cannot be offered to buyers through a listing.

To view the full list of domestic shipping service options in the response, look for the ShippingServiceDetails.ShippingService fields. Domestic shipping service options will not have a InternationalService = true field, as this indicates that the ShippingService value is an International shipping service option.

For flat and calculated shipping.

If there are two or more services and one is "pickup", "pickup" must not be specified as the first service.

See GeteBayDetails.



Applicable values: See ShippingServiceCodeType
ShippingDetails
  .ShippingServiceOptions
  .ShippingServiceAdditionalCost
AmountType (double) Conditionally The cost of shipping each additional item if the same buyer purchases multiple quantity of the same line item. This field is required when creating a multiple-quantity, fixed-price listing. Generally, the seller will give the buyer a shipping discount if that buyer purchases multiple quantity of the item, so this value should usually be less than the value set for ShippingServiceCost.

The value of this field can even be set to 0 if the seller wants to encourage buyers to buy multiple quantity of the item, or it could be that the seller can fit multiple quantities of the line item in a single shipping package, so the seller is just passing this shipping savings onto the buyer. This field is not applicable for single-quantity listings.

See Determining Shipping Costs for a Listing.

ShippingDetails
  .ShippingServiceOptions
  .ShippingServiceAdditionalCost
  [ attribute currencyID ]
CurrencyCodeType Conditionally The cost of shipping each additional item if the same buyer purchases multiple quantity of the same line item. This field is required when creating a multiple-quantity, fixed-price listing. Generally, the seller will give the buyer a shipping discount if that buyer purchases multiple quantity of the item, so this value should usually be less than the value set for ShippingServiceCost.

The value of this field can even be set to 0 if the seller wants to encourage buyers to buy multiple quantity of the item, or it could be that the seller can fit multiple quantities of the line item in a single shipping package, so the seller is just passing this shipping savings onto the buyer. This field is not applicable for single-quantity listings.

For a list of possible enumeration values, see CurrencyCodeType.
ShippingDetails
  .ShippingServiceOptions
  .ShippingServiceCost
AmountType (double) Conditionally The base cost of shipping the item using the shipping service specified in the ShippingService field. In the case of a multiple-quantity, fixed-price listing, the ShippingServiceAdditionalCost field shows the cost to ship each additional item if the buyer purchases multiple quantity of the same line item.

When returned by GetItemShipping, it includes the packaging and handling cost. For flat and calculated shipping.

If a shipping service has been specified (even LocalPickup), GetItem returns the shipping service cost, even if the cost is zero. Otherwise, cost is not returned.

If this is for calculated shipping for a listing that has not yet ended, note that the cost cannot be determined until the listing has ended and the buyer has specified a postal code.

For GetItemShipping, promotional shipping savings is reflected in the cost, if applicable.
  • If the promotional shipping option is lower than other shipping services being offered, the savings is reflected in the returned shipping cost. The shipping service named Promotional Shipping Service (or whatever is the localized name for it) is included among the shipping services.
  • If the promotional shipping cost is lower than the cost of other shipping services being offered, it is presented first in the list. (The LOWEST shipping service cost is always presented first, regardless of whether there is promotional shipping.)

See Determining Shipping Costs for a Listing.

ShippingDetails
  .ShippingServiceOptions
  .ShippingServiceCost
  [ attribute currencyID ]
CurrencyCodeType Conditionally The base cost of shipping the item using the shipping service specified in the ShippingService field. In the case of a multiple-quantity, fixed-price listing, the ShippingServiceAdditionalCost field shows the cost to ship each additional item if the buyer purchases multiple quantity of the same line item.

When returned by GetItemShipping, it includes the packaging and handling cost. For flat and calculated shipping.

If a shipping service has been specified (even LocalPickup), GetItem returns the shipping service cost, even if the cost is zero. Otherwise, cost is not returned.

If this is for calculated shipping for a listing that has not yet ended, note that the cost cannot be determined until the listing has ended and the buyer has specified a postal code.

For GetItemShipping, promotional shipping savings is reflected in the cost, if applicable.
  • If the promotional shipping option is lower than other shipping services being offered, the savings is reflected in the returned shipping cost. The shipping service named Promotional Shipping Service (or whatever is the localized name for it) is included among the shipping services.
  • If the promotional shipping cost is lower than the cost of other shipping services being offered, it is presented first in the list. (The LOWEST shipping service cost is always presented first, regardless of whether there is promotional shipping.)


For a list of possible enumeration values, see CurrencyCodeType.
ShippingDetails
  .ShippingServiceOptions
  .ShippingServiceCutOffTime
dateTime Conditionally The last time of day that an order using the specified shipping service will be accepted by the seller for the current listing. The cut off time applies and is returned only when the ShippingService field contains the name of a qualifying time-sensitive shipping service, such as eBayNowImmediateDelivery.

The cut off time is set by eBay and determined in part by the policies and locations of the seller and the shipping carrier.
ShippingDetails
  .ShippingServiceOptions
  .ShippingServicePriority
int Conditionally Controls the order (relative to other shipping services) in which the corresponding ShippingService will appear in the View Item and Checkout page.

Sellers can specify up to four domestic shipping services (with four ShippingServiceOptions containers), so valid values are 1, 2, 3, and 4. A shipping service with a ShippingServicePriority value of 1 appears at the top. Conversely, a shipping service with a ShippingServicePriority value of 4 appears at the bottom of a list of four shipping service options.

This field is applicable to Flat and Calculated shipping.
ShippingDetails
  .ShippingServiceOptions
  .ShippingSurcharge
AmountType (double) Conditionally An additional fee to charge US buyers who have the item shipped via UPS or FedEx to Alaska, Hawaii or Puerto Rico. Can only be assigned a value for the eBay US site and for items in the Parts and Accessories category of the eBay Motors site. Only returned if set. If some line items in an order have a surcharge, surcharge is added only for those line items. Flat rate shipping only.
ShippingDetails
  .ShippingServiceOptions
  .ShippingSurcharge
  [ attribute currencyID ]
CurrencyCodeType Conditionally An additional fee to charge US buyers who have the item shipped via UPS or FedEx to Alaska, Hawaii or Puerto Rico. Can only be assigned a value for the eBay US site and for items in the Parts and Accessories category of the eBay Motors site. Only returned if set. If some line items in an order have a surcharge, surcharge is added only for those line items. Flat rate shipping only.

For a list of possible enumeration values, see CurrencyCodeType.
ShippingDetails
  .ShippingServiceOptions
  .ShippingTimeMax
int Conditionally The integer value returned here indicates the maximum number of business days that the shipping service (indicated in the corresponding ShippingService field) will take to be delivered to the buyer.

This maximum shipping time does not include the seller's handling time, and the clock starts on the shipping time only after the seller has delivered the item to the shipping carrier for shipment to the buyer. 'Business days' can vary by shipping carrier and by country, but 'business days' are generally Monday through Friday, excluding holidays. This field is returned if defined for that particular shipping service option.
ShippingDetails
  .ShippingServiceOptions
  .ShippingTimeMin
int Conditionally The integer value returned here indicates the minimum number of business days that the shipping service (indicated in the corresponding ShippingService field) will take to be delivered to the buyer.

This minimum shipping time does not include the seller's handling time, and the clock starts on the shipping time only after the seller has delivered the item to the shipping carrier for shipment to the buyer. 'Business days' can vary by shipping carrier and by country, but 'business days' are generally Monday through Friday, excluding holidays. This field is returned if defined for that particular shipping service option.
ShippingDetails.ShippingType ShippingTypeCodeType Always The shipping cost model offered by the seller. This is not returned for various calls since shipping type can be deduced: if a CalculatedShippingRate structure is returned by the call, the shipping type is Calculated. Otherwise, it is one of the other non-Calculated shipping types.

GetItemShipping and GetItemTransactions: If the type was a mix of flat and calculated services, this is set simply to Flat or Calculated because it is the buyer's selection that results in one of these.

GetMyeBayBuying: If the seller has set the ShipToLocation to Worldwide for an item, but has not specified any international shipping service options, NotSpecified is returned as the ShippingType value.

Applicable values: See ShippingType.
Code so that your app gracefully handles any future changes to this list.
Standard Output Fields  
Ack AckCodeType Always A token representing the application-level acknowledgement code that indicates the response status (e.g., success). The AckCodeType list specifies the possible values for the Ack field.

Applicable values:

CustomCode
(out) Reserved for internal or future use.
Failure
(out) This value indicates that the call request processing failed.
Success
(out) This value indicates that the call request was processed successfully without any issues.
Warning
(out) This value indicates that the call request was successful, but processing was not without any issues. These issues can be checked in the Errors container, that will also be returned when one or more known issues occur with the call request.

(Not all values in AckCodeType apply to this field.)

Code so that your app gracefully handles any future changes to this list.
Build string Always This refers to the specific software build that eBay used when processing the request and generating the response. This includes the version number plus additional information. eBay Developer Support may request the build information when helping you resolve technical issues.
CorrelationID string Conditionally Most Trading API calls support a MessageID element in the request and a CorrelationID element in the response. If you pass in a MessageID in a request, the same value will be returned in the CorrelationID field in the response. Pairing these values can help you track and confirm that a response is returned for every request and to match specific responses to specific requests. If you do not pass a MessageID value in the request, CorrelationID is not returned.

Note: GetCategories is designed to retrieve very large sets of metadata that change once a day or less often. To improve performance, these calls return cached responses when you request all available data (with no filters). When this occurs, the MessageID and CorrelationID fields aren't applicable. However, if you specify an input filter to reduce the amount of data returned, the calls retrieve the latest data (not cached). When this occurs, MessageID and CorrelationID are applicable.
Errors ErrorType Conditionally,
repeatable: [0..*]
A list of application-level errors (if any) that occurred when eBay processed the request.

See Error Handling.

Errors.ErrorClassification ErrorClassificationCodeType Conditionally API errors are divided between two classes: system errors and request errors.

Applicable values:

CustomCode
(out) Reserved for internal or future use.
RequestError
(out) An error has occurred either as a result of a problem in the sending application or because the application's end-user has attempted to submit invalid data (or missing data). In these cases, do not retry the request. The problem must be corrected before the request can be made again. If the problem is due to something in the application (such as a missing required field), the application must be changed. If the problem is a result of end-user data, the application must alert the end-user to the problem and provide the means for the end-user to correct the data. Once the problem in the application or data is resolved, resend the request to eBay with the corrected data.
SystemError
(out) Indicates that an error has occurred on the eBay system side, such as a database or server down. An application can retry the request as-is a reasonable number of times (eBay recommends twice). If the error persists, contact Developer Technical Support. Once the problem has been resolved, the request may be resent in its original form.

Code so that your app gracefully handles any future changes to this list.
Errors.ErrorCode token Conditionally A unique code that identifies the particular error condition that occurred. Your application can use error codes as identifiers in your customized error-handling algorithms. See the "Errors by Number" document.
Errors.ErrorParameters ErrorParameterType Conditionally,
repeatable: [0..*]
This optional element carries a list of context-specific error variables that indicate details about the error condition. These are useful when multiple instances of ErrorType are returned.
Errors.ErrorParameters
  [ attribute ParamID ]
string Conditionally This optional element carries a list of context-specific error variables that indicate details about the error condition. These are useful when multiple instances of ErrorType are returned.
Errors.ErrorParameters.Value string Conditionally This is the value of the request parameter noted in the ParamID attribute. So, if the ParamID value was ItemID, the value in this field would be the actual value of that ItemID.
Errors.LongMessage string Conditionally A more detailed description of the condition that raised the error.
Errors.SeverityCode SeverityCodeType Conditionally Indicates whether the error is a severe error (causing the request to fail) or an informational error (a warning) that should be communicated to the user.

Applicable values:

CustomCode
(out) Reserved for internal or future use.
Error
(out) The request that triggered the error was not processed successfully. When a serious application-level error occurs, the error is returned instead of the business data.

If the source of the problem is within the application (such as a missing required element), change the application before you retry the request.
  • If the problem is due to end-user input data, please alert the end-user to the problem and provide the means for them to correct the data. Once the problem in the application or data is resolved, you can attempt to re-send the request to eBay.
  • If the source of the problem is on eBay's side, An application can retry the request as-is a reasonable number of times (eBay recommends twice). If the error persists, contact Developer Technical Support. Once the problem has been resolved, the request may be resent in its original form.


See the Compatible Application Check section of the eBay Features Guide for more information.
Warning
(out) The request was processed successfully, but something occurred that may affect your application or the user. For example, eBay may have changed a value the user sent in. In this case, eBay returns a normal, successful response and also returns the warning.

When a warning occurs, the error is returned in addition to the business data. In this case, you do not need to retry the request (as the original request was successful). However, depending on the cause or nature of the warning, you might need to contact either the end user or eBay to effect a long term solution to the problem to prevent it from reoccurring in the future.

Code so that your app gracefully handles any future changes to this list.
Errors.ShortMessage string Conditionally A brief description of the condition that raised the error.
HardExpirationWarning string Conditionally Expiration date of the user's authentication token. Only returned within the 7-day period prior to a token's expiration. To ensure that user authentication tokens are secure and to help avoid a user's token being compromised, tokens have a limited life span. A token is only valid for a period of time (set by eBay). After this amount of time has passed, the token expires and must be replaced with a new token.
Timestamp dateTime Always This value represents the date and time when eBay processed the request. The time zone of this value is GMT and the format is the ISO 8601 date and time format (YYYY-MM-DDTHH:MM:SS.SSSZ). See the Time Values section in the eBay Features Guide for information about this time format and converting to and from the GMT time zone.

Note: GetCategories and other Trading API calls are designed to retrieve very large sets of metadata that change once a day or less often. To improve performance, these calls return cached responses when you request all available data (with no filters). When this occurs, this time value reflects the time the cached response was created. Thus, this value is not necessarily when the request was processed. However, if you specify an input filter to reduce the amount of data returned, the calls retrieve the latest data (not cached). When this occurs, this time value does reflect when the request was processed.
Version string Always The version of the response payload schema. Indicates the version of the schema that eBay used to process the request. See the Standard Data for All Calls section in the eBay Features Guide for information on using the response version when troubleshooting CustomCode values that appear in the response.



Detail Controls


DetailLevel

This call does not support varying Detail Levels. You do not need to pass DetailLevel in the request.



Samples

New to making API calls? Please see Making a Call.

Note: Some item IDs, user IDs, or other data in these samples might no longer be active on eBay. If necessary, you can substitute current eBay data in your requests.

Sample: Basic Call

Calculates the shipping cost for an active listing.

Description

A user finds a stationary bike on eBay and before he bids on the listing, he wants to know how much it would cost to ship the item to his home in Berea, Kentucky. The seller is using calculated shippping rates for this listing.

Input

The key inputs for this scenario are:

Item 323032169504 is a listing with at least one domestic calculated shipping service. Since he is bidding on only one item, QuantitySold is set to 1. The postal code for Berea, Kentucky's is 40404. The country code for the United States is US.

For calculated shipping, the core cost of shipping depends on the distance between the seller's location and the buyer's shipping address and on the number of items purchased.

XML format.

<?xml version="1.0" encoding="utf-8"?>
<GetItemShippingRequest xmlns="urn:ebay:apis:eBLBaseComponents">
  <RequesterCredentials>
    <eBayAuthToken>AgAAAA**AQAAAA**aAAAAA**HG/PWw**nY+sHZ2PrBmdj6wVnY+sEZ2PrA2dj6wFkoGmAZCCowydj6x9nY+seQ**iYEAAA**AAMAAA**YddySJE44i7GP72T0AuBa0nAaDtjppWxFkysUrHxCQDNMxpYQ3C2fWtTM+0dPEi0DU2Hw8ao2O+o9MdzwWtF5YlCD+n6iMZThBF/S9iW+MWccnbrHScNIk2UAIsSqacsJEWLU5CN+fSPOqYvOJN8E+ccmceio7eYcBwEtjh/2+ZG1ZPahkZtW+0+o6ua/xxt7fhpUQUWzC4RhffZAFgnKXdpA2TNYv9hrXbgvmCw4TRwo80zqa3izn/ateq50NlhSQ7edPFTguXkSTD1mGJcAMwRnOru8uyx0uYmvWIMF0XM1IqSEIFrXp3BvF3ZhayVoQdyelrG54hlMQmWfGL1vk32bZhs5U0X/UrBT+/IcL1ht/SkKTZY8qFWaB80qmkd3KqOJDVzVOVNuLVvURxqtBopEWj14GKqajaBXIjZcWgjsjsf0FqhAO5yNeAqQFJLrrdkxxmCV9Lek1V0mOyGE8mhfM39CJOwwpwcHpsY64a0/UWR8NzQZXr/6Xmq8n/5ro7hNY+ZTWg0vFpLNSOQFG8Px9SfUKDlFLMwnRZYlwAv9SviweQDTYfWJNAEBePJ3RCc73LtoHcRUxMufCa46KjcxSKO3BD51BuKjuY+II1Nn/Gl/odCacy2gC0qsRknc9Yh93gjEmguLXHBbIQ/UVn9U7/4EyRSNusppBLs0guLqDCeJ/345XRrc51yaAsSn02I5Q3/TOZrnMLkQsPZ25mtPZnPVTALiWjCsnXqFZ38TiIJkNuNiQE4TfN/96cN</eBayAuthToken>
  </RequesterCredentials>
  <ErrorLanguage>en_US</ErrorLanguage>
  <WarningLevel>High</WarningLevel>
      <!-- Enter the ItemID for which you want the Shipping Information -->
  <ItemID>323032169504</ItemID>
  <QuantitySold>1</QuantitySold>
      <!--Enter your desitnation zipcode -->
  <DestinationPostalCode>40404</DestinationPostalCode>
  <DestinationCountryCode>US</DestinationCountryCode>
</GetItemShippingRequest>

Output

A successful response returns the ShippingDetails field, which contains the ShippingServiceCost with respect to the ShippingServiceOptions.

XML format.
<ShippingDetails>
  <CalculatedShippingRate>
    <OriginatingPostalCode>95125</OriginatingPostalCode>
    <PackagingHandlingCosts currencyID="USD">3.0</PackagingHandlingCosts>
    <ShippingIrregular>true</ShippingIrregular>
    <ShippingPackage>LargeEnvelope</ShippingPackage>
    <WeightMajor unit="lbs" measurementSystem="English">0</WeightMajor>
    <WeightMinor unit="oz" measurementSystem="English">2</WeightMinor>
  </CalculatedShippingRate>
  <ShippingRateErrorMessage>No Error</ShippingRateErrorMessage>
  <ShippingRateType>OnDemand</ShippingRateType>
  <ShippingServiceOptions>
    <ShippingService>UPS2ndDay</ShippingService>
    <ShippingServiceCost currencyID="USD">26.52</ShippingServiceCost>
    <ShippingServicePriority>1</ShippingServicePriority>
    <ExpeditedService>false</ExpeditedService>
    <ShippingTimeMin>1</ShippingTimeMin>
    <ShippingTimeMax>2</ShippingTimeMax>
  </ShippingServiceOptions>
  <ShippingType>Calculated</ShippingType>
</ShippingDetails>



Change History

Change Date Description
997
2017-01-20
  • CalculatedShippingRate.PackageDepth (deprecated): This field is being deprecated.
  • CalculatedShippingRate.PackageLength (deprecated): This field is being deprecated.
  • CalculatedShippingRate.PackageWidth (deprecated): This field is being deprecated.
  • CalculatedShippingRate.ShippingPackage (deprecated): This field is being deprecated.
  • CalculatedShippingRate.WeightMajor (deprecated): This field is being deprecated.
  • CalculatedShippingRate.WeightMinor (deprecated): This field is being deprecated.
  • ShippingDetails.InsuranceFee (deprecated): This field is being deprecated.
  • ShippingDetails.InsuranceOption (deprecated): This field is being deprecated.
905
2015-01-09
  • CalculatedShippingRateType (modified): Data fields in this container used to specify shipping package weight and dimensions should no longer be used. Instead, the equivalents fields in ShippingPackageDetailsType should be used.
879
2014-06-17
  • PickupInStoreDetails.EligibleForPickupDropOff (added): This boolean field is returned as 'true' if the listing is enabled for the "Click and Collect" feature.
869
2014-04-08
  • PickupInStoreDetails (added): A new container that is returned if the listing is enabled for the In-Store Pickup option.
861
2014-02-11
  • ShippingServiceCutOffTime (added): The last time of day that an order using the specified shipping service will be accepted by the seller for the current listing. The cut off time applies and is returned only when the ShippingService field contains the name of a qualifying time-sensitive shipping service, such as eBayNowImmediateDelivery.
849
2013-11-05
  • ShippingServiceOptions.ShippingService (modified): 'eBayNowImmediateDelivery' added as an acceptable value in the ShippingService field. This value will only be returned for eBay Now-enabled listings.
833
2013-07-25
  • ShippingDetails.ShippingRateType (modified): Three new enumeration values can be returned in ShippingRateType, which indicates the USPS shipping rate scale being used for the shipment. CommercialPlus specifies the "Commercial Plus" shipping rate scale; GoldSilver specifies the "Commercial Plus Discounted Rate1" shipping rate scale; and PlatTitanium specifies the "Commercial Plus Discounted Rate2" shipping rate scale.
825
2013-05-22
  • ShippingDetails.ShippingRateType (modified): A new enumeration value, Discounted, can be returned in ShippingRateType. Discounted indicates that the USPS Discounted shipping rate scale is being used for the shipment.
799
2012-11-07
  • ShippingDetailsType.InternationalShippingServiceOption (doc change): The description clarifies that a seller can offer up to four domestic shipping services and up to five international shipping services. However, if the seller is opted in to the Global Shipping Program, only four other international shipping services may be offered (regardless of whether or not Global Shipping is offered for the listing).
791
2012-09-12
  • InternationalShippingServiceOption.ShippingService (modified): New International shipping services added for UK and DE sites as part of the EU delivery estimate project. For UK, these new enumeration values are UK_ParcelForceIntlExpress, UK_ParcelForceIntlValue, and UK_ParcelForceIntlEconomy. For DE, these new enumeration values are DE_DeutschePostBriefIntlEcon and DE_DeutschePostBriefIntlPriority.
777
2012-06-06
  • ImportCharge (added): The total cost of customs and taxes that will be applied to a item shipped internationally using the Global Exchange program. ImportCharge is returned in ShippingDetails.InternationalShippingServiceOption. This amount is calculated and supplied for each item by the international shipping provider when a buyer views the item properties.
719
2011-04-27
  • ShippingServiceCodeType (modified): 15 new shipping services added for the Australia and Canada sites. The nine new Australia carrier-specific shipping services include AU_AusPostRegisteredPostInternationalPaddedBag1kg, AU_AusPostRegisteredPostInternationalPaddedBag500g, AU_AusPostRegisteredPostInternationalParcel, AU_AustralianAirExpressFlatRate1kg, AU_AustralianAirExpressFlatRate3kg, AU_AustralianAirExpressFlatRate5kg, AU_AustralianAirExpressMetro15kg, AU_eBayAusPost3kgFlatRateSatchel, and AU_eBayAusPost500gFlatRateSatchel. The nine new Australia generic service level shipping services include AU_EconomyDeliveryFromOutsideAU, AU_ExpeditedDeliveryFromOutsideAU, AU_ExpressDelivery, AU_Freight, and AU_StandardDelivery. The new Canada shipping service is CA_Freight.
  • Item.ShippingDetails.ShippingServiceOptions (modified): '4' has been added as a valid integer value to account for the additional international shipping service that may be specified by the seller.
  • Item.ShippingDetails.InternationalShippingServiceOption (modified): '4' and '5' have been added as valid integer values to account for the additional international shipping services that may be specified by the seller.
665
2010-04-14
  • ShippingSurcharge (modified): With a request version of 665 or greater, the total shipping cost includes any surcharge, and surcharge is no longer returned as an individual tag.
  • Promotional shipping and total shipping cost (modified): Prior to request version 665, if promotional shipping applied to a listing, there was no indication in the total shipping cost. With request version 665 and higher: (a) if the lower cost would result from the promotional shipping (instead of another shipping service being offered), the savings is reflected in the returned shipping cost; (b) the shipping service named Promotional Shipping Service (or whatever is the localized name for it) is included among the shipping services; (c) if the promotional shipping cost is lower than the cost of other shipping services being offered, it is presented first in the list (the LOWEST shipping service cost is always presented first, regardless of whether there is promotional shipping)
635
2009-09-16
  • ExcludeShipToLocation (added): Sellers can now exclude specific regions and countries from where they will ship items.
  • InsuranceDetails, InsuranceFee, InsuranceOption, InternationalInsuranceDetails, InsuranceWanted, ShippingInsuranceCost (modified): Sellers can no longer give buyers the option to purchase shipping insurance for either domestic or international items. The buyer-paid shipping insurance option has been removed from the following sites:
    BEFR, BENL, CA, CAFR, HK, IE, IN, MY, Motors, NL, PH, PL, SG, UK, US
    Insurance tags are returned only when the associated item has buyer-paid shipping insurance values.
571
2008-06-25
  • Item.ShippingDetails.ShippingServiceOptions.ShippingService (added): For the UK site, a new ShippingService Courier has been added.
  • Item.ShippingDetails.ShippingServiceOptions.ShippingService (modified): On the US site, FreightOtherShipping has been deprecated. Use Freight instead.
555
2008-03-05
  • ShippingServiceOptions.FreeShipping (added): This element is returned if FreeShipping was set to true for the first domestic shipping service option upon listing or relisting.
  • ShippingDetails.CODCost (added): Applicable beginning in April. Applies to the Italy site (site ID 101). Contains the cost of cash-on-delivery shipping.
551
2008-02-07
  • ShippingDetails.ShippingServiceOptions.FreeShipping (added): If included in the response as true, indicates free shipping for the shipping service option.
533
2007-10-03
  • ShippingServiceCodeType (modified): The package size of "USPS flat rate envelope" (for eBay US listings) is now deprecated, and six new shipping services have been added to ShippingServiceCodeType for US domestic and international shipping: USPSExpressMailFlatRateEnvelope, USPSExpressMailInternationalFlatRateEnvelope, USPSPriorityMailFlatRateBox, USPSPriorityMailFlatRateEnvelope, USPSPriorityMailInternationalFlatRateBox, USPSPriorityMailInternationalFlatRateEnvelope. If a seller offers any of these flat rate services, the seller is required to specify a package weight, even though these services are weight- independent. This is because each service has a maximum weight limit and eBay validates the listed weight. The seller must specify a package size of Package/Thick Envelope when using calculated shipping.

    Migration: If a seller submits a request with the deprecated package size, it will be converted to Package/Thick envelope. USPS Priority Mail services will be converted to USPSPriorityMailFlatRateEnvelope (or its international counterpart, if appropriate). Likewise, USPS Express Mail services will be converted to USPSExpressMailFlatRateEnvelope (or its international counterpart). A non-blocking warning message will be returned to the seller in the API response. Active listings using USPS Flat Rate Envelope remain unaffected in the View Item and Checkout flows. eBay will internally treat it as a flat rate service when calculating the cost.
491
2006-12-13
  • ShippingDetails.PaymentInstructions (doc change): Clarified the purpose of PaymentInstructions, that it can return values longer than 500 characters, and that it can be used without other shipping details (e.g., for eBay Motors vehicles).
485
2006-11-01
  • ShippingDetails.InternationalShippingServiceOption.ShippingInsuranceCost (added): The insurance cost associated with shipping a single item with a given international shipping service.
477
2006-09-06
  • ShippingTypes: CalculatedDomesticFlatInternational, FlatDomesticCalculatedInternational (added): Two more shipping types were introduced to enable a seller to use flat rate shipping for the domestic services and calculated shipping for the international shipping services, or vice versa. See the Managing Shipping documentation for details.
  • ShippingServiceOptions.ShippingSurcharge (added): A cost that the seller can add for flat rate shipping for eBay US and Motors Parts and Accessories. See the Managing Shipping documentation for details.
  • ShippingDetails.InternationalPackagingHandlingCosts (added): A means of distinguishing international packaging/handling costs from domestic costs. See the Managing Shipping documentation for details.
415
2005-6-29
  • ShippingDetails.ShippingOptions.ExpeditedService, ShippingTimeMin and ShippingTimeMax (added): Fields supporting the new Get It Fast feature.
411
2005-6-1
  • ShippingPackage.ExtraLargePack (modified): New value.
1085
2018-10-26
  • ShippingDetails.SalesTax (doc change): Added a note to state that the Sales Tax rate for a US tax jurisdiction that is subject to the 'eBay Collect and Remit Tax' program will be ignored during the checkout process, since eBay will be collecting and remitting this tax to the tax authorities without the seller's involvement.
1081
2018-09-28
  • ShippingDetails.PaymentInstructions (doc change): The maximum length for this field was inaccurately documented as 1000, when the maximum length is actually 500 characters.
1049
2018-02-16
  • Item.EligibleForPickupDropOff (deprecated): Add/Revise/Relist/Verify calls can no longer be used to set Click and Collect eligibility at the listing level, so this field should not be returned in GetItemShipping. However, until the PickupInStoreDetails.EligibleForPickupDropOff in Add/Revise/Relist/Verify calls is fully deprecated in the Trading WSDL, it can still be used in those calls, but it will have no functional affect. However, if set in an Add/Revise/Relist/Verify call, it will get returned in GetItemShipping.