1

我想通过那里的 Trading API 在 eBay 上列出一些项目,但他们的 API 非常复杂,我需要一些帮助。

我可以很好地通过 API 在 eBay 上列出商品,但我似乎无法弄清楚如何像在 eBayaddItem页面上那样拥有多个运输选项

这是我需要通过 API 在 eBay 上进行的运输设置 http://i.cubeupload.com/F4oURU.png

这是我的xml

<?xml version="1.0" encoding="utf-8"?>  
<AddItemsRequest xmlns="urn:ebay:apis:eBLBaseComponents">  
<ErrorLanguage>en_US</ErrorLanguage>  
<AddItemRequestContainer>  
<MessageID>100</MessageID>  
<Item>  
<StartPrice currencyID=\"CAD\">223.96</StartPrice>  
<CategoryMappingAllowed>true</CategoryMappingAllowed>  
<ConditionID>1000</ConditionID>  
<Country>CA</Country>  
<Currency>CAD</Currency>  
<Title>TEST</Title>  
<Description>DEscription</Description>  
<DispatchTimeMax>3</DispatchTimeMax>  
<ListingDuration>Days_7</ListingDuration>  
<ListingType>FixedPriceItem</ListingType>  
<PaymentMethods>PayPal</PaymentMethods>  
<PayPalEmailAddress>  [--  myPayPalEmail --]  </PayPalEmailAddress>  
<PictureDetails>  
<Item.PictureDetails.PictureURL>  
http://www.jccayer.com/productphoto/2793-22-1_ep1.jpg  
</Item.PictureDetails.PictureURL>  
<PictureURL>http://www.jccayer.com/productphoto/2793-22-1_ep1.jpg</PictureURL>  
</PictureDetails>  
<PostalCode>K0A1M0</PostalCode>  
<PrimaryCategory>  
<CategoryID>279</CategoryID>  
</PrimaryCategory>  
<Quantity>6</Quantity>  
<ReturnPolicy>  
<ReturnsAcceptedOption>ReturnsAccepted</ReturnsAcceptedOption>  
<RefundOption>MoneyBack</RefundOption>  
<ReturnsWithinOption>Days_30</ReturnsWithinOption>  
<Description>Text description of return policy details</Description>  
<ShippingCostPaidByOption>Buyer</ShippingCostPaidByOption>  
</ReturnPolicy>  
<ShippingDetails>  
<ShippingType>Flat</ShippingType>  
<ShippingServiceOptions>  
<ShippingService>CA_UPSStandardCanada</ShippingService>  
<ShippingServiceCost>21.50</ShippingServiceCost>  
<ShippingServiceAdditionalCost>5.00</ShippingServiceAdditionalCost>  
<ShippingServicePriority>1</ShippingServicePriority>  
</ShippingServiceOptions>  
<InternationalShippingServiceOption>  
<ShippingService>CA_UPSStandardUnitedStates</ShippingService>  
<ShippingServiceCost>50.50</ShippingServiceCost>  
<ShippingServiceCost>10.00</ShippingServiceCost>  
<ShipToLocation></ShipToLocation>  
<ShippingServicePriority>2</ShippingServicePriority>  
</InternationalShippingServiceOption>  
</ShippingDetails>  
<Site>Canada</Site>  
</Item>  
</AddItemRequestContainer>  
<RequesterCredentials>  
<eBayAuthToken>[INSERT YOUR OWN AUTH TOKEN]</eBayAuthToken>  
</RequesterCredentials>  
</AddItemsRequest>

有谁知道我如何匹配那张照片上的那些设置?

4

1 回答 1

4

这将引导您了解为 eBay 上的项目指定运输详细信息所需的 XML。

示例运输详细信息

卖家使用的运费模型是Flat模型。卖家通过UPS Standard Canada提供加拿大境内的国内运输服务,首件费用为15.99 加元,每增加一件费用为 6.00 美元。该物品也可以国际运输,并为此提供两项服务。第一项国际服务仅使用UPS Standard United States运送到美国,第一项费用为 21.08美元,每增加一项费用为 8.00 美元。第二项服务的第一项费用为 69.32美元,每增加一项费用为 29.00 美元UPS 全球加急已使用并将运送到以下地点。

  • 北美洲和南美洲
  • 墨西哥
  • 德国
  • 欧洲
  • 法国
  • 英国
  • 日本
  • 亚洲
  • 台湾
  • 澳大利亚

XML

运输信息在您请求的ShippingDetails元素中指定。这是ShippingDetailsType类型,此处提供了完整的字段列表。

<ShippingDetails>
    <!-- Domestic and international shipping details will be added here -->
</ShippingDetails>

我们可以添加到ShippingDetails的第一条信息是卖方正在使用的运输模型,在这种情况下是Flat

<ShippingType>Flat</ShippingType>

有许多不同的值可以作为ShippingType输入,完整的列表可以在这里找到。

我们现在可以转到请求的国内运输部分。您最多可以指定 4 个国内运输服务。每个服务都是一个ShippingServiceOptions元素,并且属于ShippingServiceOptionsType类型。此处提供了完整的字段列表。

<ShippingServiceOptions>
    <!-- Shipping costs and options related to a 
         domestic shipping service will be added here -->
</ShippingServiceOptions>

为了控制国内运输服务在查看商品和结帐页面中出现的顺序,卖家可以指定优先级。优先级为 1 的服务将出现在顶部,值为 4 的服务将出现在底部。请注意,在此示例中,只有一项国内运输服务,因此优先级是可选的,但包含它并没有什么害处。

<ShippingServicePriority>1</ShippingServicePriority>

使用ShippingServiceCost元素指定运输服务的成本。由于该卖家还对其他商品收费,因此还需要指定ShippingServiceAdditionalCost元素。

<ShippingServiceCost>15.99</ShippingServiceCost>
<ShippingServiceAdditionalCost>6.00</ShippingServiceAdditionalCost>

指示将使用UPS Standard Canada是通过ShippingService元素完成的。

<ShippingService>CA_UPSStandardCanada</ShippingService>

请注意,您实际上并未指定UPS Standard Canada,而是使用值 *CA_UPSStandardCanada*。获取要使用的正确值超出了本示例的范围,但可以总结如下。

  • 调用GeteBayDetails并将DetailName设置为ShippingServiceDetails
  • 在响应中遍历每个ShippingServiceDetails元素并检查是否存在ValidForSellingFlow
  • 如果ValidForSellingFlow存在,则读取ShippingService的值。
  • 更多信息可以在这里找到。

我们现在可以开始第一个国际航运服务。您最多可以指定 5 个国际运输服务。每个服务都是InternationalShippingServiceOptionsType类型的InternationalShippingServiceOption元素。此处提供了完整的字段列表。

<InternationalShippingServiceOption>
    <!-- Shipping costs and options related to an 
         international shipping service will be added here -->
</InternationalShippingServiceOption>

卖家可以再次为每个运输服务指定优先级,为此我们将输入值 1。请注意,优先级仅在相同类型的运输服务之间进行比较。这意味着即使我们将国内和国际运输服务的优先级设置为 1,在确定它们将出现的顺序时,它们也不会相互比较。

<ShippingServicePriority>1</ShippingServicePriority>

我们现在可以添加使用此服务的成本。

<ShippingServiceCost>21.08</ShippingServiceCost>
<ShippingServiceAdditionalCost>8.00</ShippingServiceAdditionalCost>

UPS 标准美国也被添加。再次注意,我们实际上并没有指定UPS Standard United States,而是使用调用GeteBayDetails时检索到的值。

<ShippingService>CA_UPSStandardUnitedStates</ShippingService>

卖方已指定此国际运输服务将仅运送到美国。通过ShipToLocation元素指示卖家将运送到哪个位置或区域。

<ShipToLocation>US</ShipToLocation>

再一次,我们实际上并没有指定United States而是使用值US。获取要使用的正确值也在本示例的范围之外,但可以总结如下。

  • 调用GeteBayDetails并将DetailName设置为ShippingLocationDetails
  • 在响应中遍历每个ShippingLocationDetails元素并读入ShippingLocation的值。
  • 更多信息可以在这里找到。

建立第二个国际航运服务的步骤与第一个相同。请注意,我们将优先级设置为 2,因为卖家希望它出现在第一个国际运输服务的下方。此外,还指定了几个ShipToLocation元素以指示卖方将使用此服务运送到的许多区域。

<InternationalShippingServiceOption>
    <ShippingServicePriority>2</ShippingServicePriority>
    <ShippingServiceCost>69.32</ShippingServiceCost>
    <ShippingServiceAdditionalCost>29.00</ShippingServiceAdditionalCost>
    <ShippingService>CA_UPSWorldWideExpedited</ShippingService>
    <ShipToLocation>Americas</ShipToLocation>
    <ShipToLocation>TW</ShipToLocation>
    <ShipToLocation>Asia</ShipToLocation>
    <ShipToLocation>AU</ShipToLocation>
    <ShipToLocation>MX</ShipToLocation>
    <ShipToLocation>DE</ShipToLocation>
    <ShipToLocation>FR</ShipToLocation>
    <ShipToLocation>Europe</ShipToLocation>
    <ShipToLocation>GB</ShipToLocation>
    <ShipToLocation>JP</ShipToLocation>
</InternationalShippingServiceOption> 

将所有部分放在一起会生成以下 XML。

<ShippingDetails>
    <ShippingType>Flat</ShippingType>
    <ShippingServiceOptions>
        <ShippingServicePriority>1</ShippingServicePriority>
        <ShippingServiceCost>15.99</ShippingServiceCost>
        <ShippingServiceAdditionalCost>6.00</ShippingServiceAdditionalCost>
        <ShippingService>CA_UPSStandardCanada</ShippingService>
    </ShippingServiceOptions>
    <InternationalShippingServiceOption>
        <ShippingServicePriority>1</ShippingServicePriority>
        <ShippingServiceCost>21.08</ShippingServiceCost>
        <ShippingServiceAdditionalCost>8.00</ShippingServiceAdditionalCost>
        <ShippingService>CA_UPSStandardUnitedStates</ShippingService>
        <ShipToLocation>US</ShipToLocation>
    </InternationalShippingServiceOption>        
    <InternationalShippingServiceOption>
        <ShippingServicePriority>2</ShippingServicePriority>
        <ShippingServiceCost>69.32</ShippingServiceCost>
        <ShippingServiceAdditionalCost>29.00</ShippingServiceAdditionalCost>
        <ShippingService>CA_UPSWorldWideExpedited</ShippingService>
        <ShipToLocation>Americas</ShipToLocation>
        <ShipToLocation>TW</ShipToLocation>
        <ShipToLocation>Asia</ShipToLocation>
        <ShipToLocation>AU</ShipToLocation>
        <ShipToLocation>MX</ShipToLocation>
        <ShipToLocation>DE</ShipToLocation>
        <ShipToLocation>FR</ShipToLocation>
        <ShipToLocation>Europe</ShipToLocation>
        <ShipToLocation>GB</ShipToLocation>
        <ShipToLocation>JP</ShipToLocation>
    </InternationalShippingServiceOption>
</ShippingDetails>

可以在此处找到使用这些运输详细信息的示例清单。请注意,此项目可能不再存在。

于 2013-08-29T13:11:05.730 回答