Ray, can you confirm/provide the following for us:
1) List of "CarrierCode" 's?
2) What "PickupType" is?
3) What "CustomerClass" is?
On our confirm_cart.php we have the following:
$Shipping_Parameters["CarrierCode"] = "".(($Shipping_Parameters["ShiptoCountry"]=="GB")?"11":"07") ."";
$Shipping_Parameters["PickupType"] = "01";
$Shipping_Parameters["CustomerClass"] = "none";
UPS, via telephone, have told us that they don't support third-party applications and if there's a problem then they can't help us despite us re-iterating that the issue is with the response from UPS not with the application we're using (eCart).
Re-testing again today we set up an order in eCart on our site for a 1.16kg bottle from DG87EN to DG86AF. This is a distance of some 6 miles.
eCart returns the standard £25.15 rate from UPS.
When we log in to our client's UPS account it gives us two options of £13.38 and £9.20 which is much more realistic.
Checking the UPS Developer Kit it states the following:
1. Implement: Review the requirements for each API carefully at the UPS Developer Kit page at ups.com (see link below). Download the Software Developer Kit (SDK) and carefully review the entire Developer Guide for the API you will integrate. The Developer Kit also includes sample code and WSDLs. Once you have reviewed the kit, you should request access to the UPS test environment. Most APIs provide immediate access to both test and production environments. However, the following APIs require a second request to activate production access: Address Validation Street Level, Locator, Pickup, Rating (LTL Freight only), and Shipping.
2.Test: UPS provides a testing environment that is accessible with an Access Key for all APIs. This will allow you to simulate live request and response messaging to ensure you have properly formatted your XML or Web Service requests.
3.Move to Production: Once files have been submitted and approved by the UPS certification team, production access is granted. The e-mail address for submitting files is included within the most current Developer Guide.
4.Get Technical Support: You can obtain e-mail support at ups.com at any time. Attach a file with your e-mail support request that includes your XML request/response messages and errors. First level Technical Support will respond the next day (this excludes U.S. holidays). If your problem log is escalated to third-level Technical Support, you will get a response by the next business day (excluding U.S. holidays). For general questions, you can download the Knowledge Base file by selecting the link below. This resource contains answers to hundreds of questions about the APIs. Finally, if your issue is urgent and you need immediate assistance, you can call the first-level Technical Support desk in the U.S. at 800-247-9035.
Are we stuck in a test mode and need to make a request to UPS? If so, what files do we need to send them for approval or has this already been done by WebAssist when creating the UPS integration as part of the eCart product?
We found this forum post on UPS which, at the end, suggests that we need to move to production mode in order to see our actual negotiated rates:
In item 4 above though it states..."Attach a file with your e-mail support request that includes your XML request/response messages and errors.". Can you clarify how I do that Ray, so I can send UPS the relevant files? Is this to do with the test.php file I'd put up or do I need to uncomment the var_dump line in the Protx_VSPForm.php file, run another test and then...what...copy and paste the View Source?
Failing all of this...how do I attach our own Shipping rates to correspond with the Country drop down selection made by the customer on the checkout.php page? I'll need to put something in place until we sort out what's going wrong with UPS.
When I've logged in to the client's UPS account it returns £13.38 (UPS Express) and £9.20 (UPS Standard) for my test shipment. However, when I'm logged out of the client's UPS account then the UPS website quotes £57.66 and £32.75 for the same delivery. eCart., however, returns £25.15.
Where, then, is eCart getting £25.15 from? I'm not convinced that we're passing all of the correct details to UPS, however I do suspect that UPS is at fault too. I'd be interested to know, and to be able to test, the different CarrierCode, PickupType and CustomerClass codes as they may produce different results.
Checking that forum post I've linked to, above, do we have this in place in eCart?:
3. The empty node <NegotiatedRatesIndicator/> must be included in the RatingServiceSelectionRequest/Shipment/RateInformation container. The RateInformation container may need to be added as well.