为什么USPS的运费不起作用?我正在使用ratev4,我得到了一个错误:
错误:
API Authorization failure. RateV4 is not a valid API name for this protocol.
UspsCom::DoAuth下面是我的代码:
<?php
$devurl = "testing.shippingapis.com/ShippingAPITest.dll";
$puburl = "https://secure.shippingapis.com/ShippingAPITest.dll";
$service = "RateV4";
$userid = "690DEVBL1739";
$xml = rawurlencode('<RateV4Request USERID="xxxxx">
<Revision/>
<Package ID="1ST">
<Service>FIRST CLASS</Service>
<FirstClassMailType>LETTER</FirstClassMailType>
<ZipOrigination>44106</ZipOrigination>
<ZipDestination>20770</ZipDestination>
<Pounds>1</Pounds>
<Ounces>0.0</Ounces>
<Container/>
<Size>REGULAR</Size>
<Machinable>true</Machinable>
</Package>
</RateV4Request>');
$request = $devurl . "?API=" . $service . "&xml=" . $xml;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $request);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_HTTPGET, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo "<pre>";
print_r($response);
echo "</pre>";发布于 2012-11-17 07:41:03
我在测试Ratev4 (以及用于国际发货的v2 )时也遇到了同样的问题。只要让他们把你转移到生产环境就可以了,但当然要确保你使用了正确的urls。除此之外,据我所知,你的设置无论如何都不会起作用,因为你要的是头等舱的价格,而重量是1磅。头等舱只有13盎司...
发布于 2015-01-16 14:58:04
我假设您已经在这里注册了USPS Web工具:
https://secure.shippingapis.com/registration/
并且已收到USPS对您的帐户已激活的确认:
如果您需要设置USPS,或者您的客户在结帐时收到此错误(见下文),您应该确认以下内容
Confirm that our USPS API access is approved
Confirm that it is not in test mode and is in production mode
If USPS says your account is active, this does not mean it is in production mode, - you need to call USPS and specifically request that it be moved to production mode after your account has been approved. A good idea is to perform this quick test:在浏览器中插入以下内容,并使用您自己的用户in代替任何浏览器URL中的XXXX:
https://secure.shippingapis.com/ShippingAPITest.dll?API=CarrierPick...USERID="XXXX">ABC Corp.Suite 7771390市场StreetHoustonTX770581234
如果您的USPS帐户处于活动状态,则应接受用户名。
Confirm that your username and password is for this site only. USPS only allows 1 domain per account.http://production.shippingapis.com/ShippingAPI.dll
问题是,在默认情况下,您不能访问USPS的生产API。他们必须先批准你。请记住,他们只允许您在每个帐户的一个网站上使用它,因此,如果您正在为客户、客户或除您自己之外的其他业务实体设置Magento,您应该为他们设置一个单独的USPS帐户。
这就是为什么你会在生成的运输标签上收到这个文本- "Sample Do Not Mail“。
您可以在此处设置您的USPS WebTools帐户:
http://www.usps.com/webtools/
一旦您设置了帐户,他们将为您提供访问测试环境的权限。USPS test API的URL是:http://testing.shippingapis.com/ShippingAPITest.dll
我建议要求USPS打开生产模式。当您获得USPS对生产API的批准时,您应该使用以下URL:
http://production.shippingapis.com/ShippingAPI.dll
https://secure.shippingapis.com/ShippingAPI.dll
完成测试后,请向USPS互联网客户关怀中心(ICCC)发送电子邮件。他们将切换您的配置文件以允许您访问生产服务器,并为您提供生产URL。
ICCC的工作人员如下:周一至周五东部时间上午8:00至晚上8:30,东部时间星期六上午8:00至下午6:00,周日和邮政假日休息,但下列假日除外:马丁·路德·金、总统日、哥伦布日和退伍军人日,东部时间上午9:00至下午6:00。
电子邮件: uspstechsupport@esecurecare.net电话: 1-800-344-7779
但请记住,为每个网站设置一个单独的USPS帐户(或每个域至少一个)是非常重要的。如果您在多个网站上使用您的帐户,USPS将禁止您访问其生产服务器。
要申请访问USPS生产应用编程接口,请在此处填写表单:http://www.usps.com/webtools/webtoolsapirequestform.htm
USPS不允许您使用他们的API进行批处理或数据清理,因此请确保不要在申请表上选中这些复选框。
一旦USPS允许您访问他们的生产API服务器,一切都应该与所有USPS发货选项相对应。如果您仍然有问题,请再次检查您是否有权访问USPS的生产API服务器。
发布于 2012-06-28 04:56:39
我也有同样的问题。RateV4对USPS的测试服务器无效,仅对生产服务器有效。我联系了他们的支持人员,并试图获得有效的API进行测试,但他们发送的所有内容都是指向他们的文档的链接(其中只包含生产API,而不是测试)。最后,我只是要求他们将我的帐户转移到生产环境中,他们做到了。
https://stackoverflow.com/questions/9969977
复制相似问题