我正在开发一个系统,该系统使用UPS作为我们打包订单的主要快递员。
我在使用UPS API时发现了一个奇怪的问题。我会将所有请求发送到Time In Transit,然后选择客户喜欢的最佳服务。
然而,当从Time in Transit API返回的服务列表中选择一个服务时,我将该服务代码传递给Rating API,并且我一直得到这个错误:
错误代码:111209-服务类型无效
我已经查看了运输时间和评级XML开发人员指南中的附录E-服务代码部分,但它们似乎都映射错误。。。
这是发送的运输时间请求:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TimeInTransitRequest xml:lang="en-GB">
<Request>
<RequestAction>TimeInTransit</RequestAction>
<TransactionReference>
<CustomerContext></CustomerContext>
</TransactionReference>
</Request>
<ShipmentWeight>
<UnitOfMeasurement>
<Code>KGS</Code>
</UnitOfMeasurement>
<Weight>1</Weight>
</ShipmentWeight>
<TransitFrom>
<AddressArtifactFormat>
<PoliticalDivision2>Elham</PoliticalDivision2>
<PoliticalDivision1></PoliticalDivision1>
<PostcodePrimaryLow>CT46NE</PostcodePrimaryLow>
<CountryCode>GB</CountryCode>
</AddressArtifactFormat>
</TransitFrom>
<TransitTo>
<AddressArtifactFormat>
<PoliticalDivision2></PoliticalDivision2>
<PoliticalDivision1>CA</PoliticalDivision1>
<PostcodePrimaryLow>92614</PostcodePrimaryLow>
<CountryCode>US</CountryCode>
</AddressArtifactFormat>
</TransitTo>
<PickupDate>20141024</PickupDate>
<TotalPackagesInShipment>1</TotalPackagesInShipment>
<InvoiceLineTotal>
<MonetaryValue>255</MonetaryValue>
<CurrencyCode>GBP</CurrencyCode>
</InvoiceLineTotal>
</TimeInTransitRequest>
这是从API返回的内容:
<?xml version="1.0"?>
<TimeInTransitResponse>
<Response>
<TransactionReference></TransactionReference>
<ResponseStatusCode>1</ResponseStatusCode>
<ResponseStatusDescription>Success</ResponseStatusDescription>
</Response>
<TransitResponse>
<PickupDate>2014-10-24</PickupDate>
<TransitFrom>
<AddressArtifactFormat>
<PoliticalDivision2>ELHAM</PoliticalDivision2>
<PoliticalDivision1>KENT</PoliticalDivision1>
<Country>UNITED KINGDOM</Country>
<CountryCode>GB</CountryCode>
<PostcodePrimaryLow>CT046</PostcodePrimaryLow>
</AddressArtifactFormat>
</TransitFrom>
<TransitTo>
<AddressArtifactFormat>
<PoliticalDivision2>IRVINE</PoliticalDivision2>
<PoliticalDivision1>CA</PoliticalDivision1>
<Country>UNITED STATES</Country>
<CountryCode>US</CountryCode>
<PostcodePrimaryLow>92614</PostcodePrimaryLow>
</AddressArtifactFormat>
</TransitTo>
<AutoDutyCode>01</AutoDutyCode>
<ShipmentWeight>
<UnitOfMeasurement>
<Code>KGS</Code>
</UnitOfMeasurement>
<Weight>1.0</Weight>
</ShipmentWeight>
<InvoiceLineTotal>
<CurrencyCode>GBP</CurrencyCode>
<MonetaryValue>255.00</MonetaryValue>
</InvoiceLineTotal>
<Disclaimer>All services are guaranteed if shipment is paid for in full by a payee in the United States. Services listed as guaranteed are backed by a money-back guarantee for transportation charges only. See Terms and Conditions in the Service Guide for details. Certain commodities and high value shipments may require additional transit time for customs clearance.</Disclaimer>
<ServiceSummary>
<Service>
<Code>21</Code>
<Description>UPS Express Plus</Description>
</Service>
<Guaranteed>
<Code>Y</Code>
</Guaranteed>
<EstimatedArrival>
<BusinessTransitDays>1</BusinessTransitDays>
<Time>08:00:00</Time>
<PickupDate>2014-10-24</PickupDate>
<PickupTime>13:00:00</PickupTime>
<HolidayCount>0</HolidayCount>
<DelayCount>0</DelayCount>
<Date>2014-10-27</Date>
<DayOfWeek>MON</DayOfWeek>
<TotalTransitDays>3</TotalTransitDays>
<CustomerCenterCutoff>10:30:00</CustomerCenterCutoff>
<RestDays>2</RestDays>
</EstimatedArrival>
</ServiceSummary>
<ServiceSummary>
<Service>
<Code>01</Code>
<Description>UPS Express</Description>
</Service>
<Guaranteed>
<Code>Y</Code>
</Guaranteed>
<EstimatedArrival>
<BusinessTransitDays>1</BusinessTransitDays>
<Time>10:30:00</Time>
<PickupDate>2014-10-24</PickupDate>
<PickupTime>13:00:00</PickupTime>
<HolidayCount>0</HolidayCount>
<DelayCount>0</DelayCount>
<Date>2014-10-27</Date>
<DayOfWeek>MON</DayOfWeek>
<TotalTransitDays>3</TotalTransitDays>
<CustomerCenterCutoff>10:30:00</CustomerCenterCutoff>
<RestDays>2</RestDays>
</EstimatedArrival>
</ServiceSummary>
<ServiceSummary>
<Service>
<Code>28</Code>
<Description>UPS Express Saver</Description>
</Service>
<Guaranteed>
<Code>Y</Code>
</Guaranteed>
<EstimatedArrival>
<BusinessTransitDays>1</BusinessTransitDays>
<Time>23:30:00</Time>
<PickupDate>2014-10-24</PickupDate>
<PickupTime>13:00:00</PickupTime>
<HolidayCount>0</HolidayCount>
<DelayCount>0</DelayCount>
<Date>2014-10-27</Date>
<DayOfWeek>MON</DayOfWeek>
<TotalTransitDays>3</TotalTransitDays>
<CustomerCenterCutoff>10:30:00</CustomerCenterCutoff>
<RestDays>2</RestDays>
</EstimatedArrival>
</ServiceSummary>
<ServiceSummary>
<Service>
<Code>29</Code>
<Description>UPS Worldwide Express Freight</Description>
</Service>
<Guaranteed>
<Code>Y</Code>
</Guaranteed>
<EstimatedArrival>
<BusinessTransitDays>2</BusinessTransitDays>
<Time>23:30:00</Time>
<PickupDate>2014-10-24</PickupDate>
<PickupTime>13:00:00</PickupTime>
<HolidayCount>0</HolidayCount>
<DelayCount>0</DelayCount>
<Date>2014-10-28</Date>
<DayOfWeek>TUE</DayOfWeek>
<TotalTransitDays>4</TotalTransitDays>
<CustomerCenterCutoff>10:30:00</CustomerCenterCutoff>
<RestDays>2</RestDays>
</EstimatedArrival>
</ServiceSummary>
<ServiceSummary>
<Service>
<Code>05</Code>
<Description>UPS Expedited</Description>
</Service>
<Guaranteed>
<Code>N</Code>
</Guaranteed>
<EstimatedArrival>
<BusinessTransitDays>4</BusinessTransitDays>
<Time>23:30:00</Time>
<PickupDate>2014-10-24</PickupDate>
<PickupTime>13:00:00</PickupTime>
<HolidayCount>0</HolidayCount>
<DelayCount>0</DelayCount>
<Date>2014-10-30</Date>
<DayOfWeek>THU</DayOfWeek>
<TotalTransitDays>6</TotalTransitDays>
<CustomerCenterCutoff>10:30:00</CustomerCenterCutoff>
<RestDays>2</RestDays>
</EstimatedArrival>
</ServiceSummary>
<MaximumListSize>35</MaximumListSize>
</TransitResponse>
</TimeInTransitResponse>
例如,我选择UPS Express Plus
服务。服务代码是21
,我将其传递到Rate API请求中,但会出现与上面相同的错误。服务代码附加在RatingServiceSelectionRequest/Shipment/Service/Code
路径中,如下所示:
<Service>
<Code>21</Code>
</Service>
我在这里做错了什么吗?我们所有的订单都可以发送到世界各地,但总是从英国发货。
UPS的服务代码似乎不是21。请检查此文档并尝试他们发布的代码之一。
http://www.yourecommerce.com/media/UPS_Rates_XML_SDK.pdf
1。
您正在使用"运输时间"请求。对此请求的回复不包含"估计运费"。
您应该使用"费率"请求。你能发布你的价格申请样本吗?
请参阅UPS网站上有关"费率"请求的更多信息:https://www.ups.com/upsdeveloperkit/downloadresource?loc=en_US
2.
根据2016年1月4日的UPS文件,21服务代码是指:
描述/类别/路线
-
UPS Worldwide Express PlusSM/源自美国的其他货物/所有
-
UPS Next Day Air®Early/始发于波多黎各/波多黎各至美国的货物
-
UPS Worldwide Express PlusSM/源自波多黎各的货物/源自波多黎各的其他货物
-
UPS Express®早期/源自加拿大/加拿大至美国的货物
-
UPS Worldwide Express PlusSM/源自加拿大的货物/源自加拿大的其他货物
-
UPS Express Plus/源自墨西哥的货物/所有
-
UPS全球快递PlusSM/始发于欧盟的货物/目的地在欧盟以外的
-
UPS Worldwide Express PlusSM/源自其他国家/地区的货物/所有