Jump to content

Shipping Issues


LaughingHorse

Recommended Posts

Standard Post (formerly Parcel Post) is limited to Zones 5-8. Shipping to Zones 1-4 is limited to certain things and must be declared in the rate request.

I recently worked with a store owner who shipped model rocket engines. The rate request had to say "surface-only" or USPS would not include Standard Post for Zone 4 or closer.

Weird that you got something - unless the destination zip code changed as well as the weight.

Link to comment
Share on other sites

I ticked "Parcel Post"

and

First Class - Parcel
Some of our items are required to be shipped by ground (aerosol cans).

I did do a further test and added two of the same item bringing the basket weight to: 1.120Lb

At that point, all that was available through USPS was Priority and Priority Express

Priority is showing @ 8.05 lowest UPS is showing at 14.12 but UPS is still showing up on top.

I'm also still not getting any FedEx showing up as a shipping option

 

Link to comment
Share on other sites

I think the shipper names are sorted alphabetically: Fedex, UPS, then USPS. That's why UPS is on top.

I didn't say the rates were sorted least to most expensive, I said the least expensive is pre-selected in the drop-down.

I have no answer to why Fedex is not listed. And you have not said whether there is any log entries in the admin System Log, System Error Log table that references Fedex.

Link to comment
Share on other sites

For the Fedex Module I have real info in:
Account Number
Account Number
Account Password
Account Key
Meter Number
Packaging Weight

I have enabled:
2 Day
First Overnight
Ground Home Delivery
Priority Overnight
Standard Overnight

But none of those options show up

 

Where do I find: System Log and the System Error Log table

Under the section

"Advanced" my options are:

    Maintenance
    Request Log
    Staff Access Log
    Error Log
    PHP Info

 

Link to comment
Share on other sites

Interesting.

Is there anything in the admin Error Log related to the Fedex shipping module? Maybe something about a SOAP client?

Two final things to check:
1. In the Fedex settings page, make sure there is nothing in the Allowed Zones and Disabled Zones tabs.
2. (I know it's stupid, but) If the Fedex module is enabled, disable it, then re-enable it.

If the request is actually going out (and if you have absolute control over your server, you can install a network card traffic monitor and see if traffic is leaving and arriving for and from fedex), we may need to place some additional diagnostic code to catch the SOAP request and reply from Fedex.

Link to comment
Share on other sites

I will still assume that the Fedex module is enabled and an attempt to get a response from Fedex is actually happening.

First, some background. Many versions ago of the stock (included in CC5) Fedex module, CubeCart would issue a trigger_error() statement when something went wrong., However, that statement also included the error level - E_USER_WARNING. This may have changed briefly to E_USER_ERROR. However, the downloadable module available for CC6 does not specify the error level. The default error level of PHP's trigger_error() function is E_USER_NOTICE.

In the file /classes/debug.class.php, the errorLogger() function looks for the error level name. In some cases, the error is not to be logged.

E_USER_NOTICE: No log
E_USER_WARNING: No log
E_USER_ERROR: Yes log

So, we have a programming situation where we need to have Fedex errors logged, but the logging of the unspecified error level (thus, default E_USER_NOTICE) does not happen.

Let's make an edit to the Debug class so that any and all errors get logged. We can change it back if necessary. Near line 438:

Find:
		if ($log) {
			$this->_writeErrorLog($error);
		}

Change to:
		if (true || $log) {
			$this->_writeErrorLog($error);
		}

Now let's see if there is a reference to Fedex in the System Error log.

Link to comment
Share on other sites

Ok, found what we were looking for.

You can undo the edit made to the debug file. And you can delete all that error logging in your posts above. No one needs to see that.

[Notice] .../cube/modules/shipping/FedEx/shipping.class.php:221 - FedEx Error: Authentication Failed

For some reason, Fedex does not like your user, pass, meter_number, or whatever else.

Please review the credentials you may have received in an email from Fedex, and/or contact Fedex about what you should be using.

Edited by Dirty Butter
I deleted all the error logging
Link to comment
Share on other sites

Quote from bsmither on page 1:

Also, we may want to think about having CubeCart remove the 2-Day and 1-Day phrases. This is an estimate only provided by USPS on how many days USPS will have the package in transit. There are clueless customers out there who will think that you, the store owner, are promising one or two day delivery from the date the order is placed.

 

This is referencing CC Version 6.05. References may vary.

To remove the USPS delivery time, you need to edit the following file:

  • /modules/shipping/USPS/shipping.class.php

Search near line 144 for:

$response    = $request->send();

Add  after:

// START Delivery Time Removal
$response = str_replace("1-Day", '', $response);
$response = str_replace("2-Days", '', $response);
$response = str_replace("3-Days", '', $response);
$response = str_replace("4-Days", '', $response);
$response = str_replace("5-Days", '', $response);
$response = str_replace("6-Days", '', $response);
$response = str_replace("7-Days", '', $response);
// END Delivery Time Removal

Before:

if ($response) {

 

 

Edited by [email protected]
Link to comment
Share on other sites

Honestly, I think if the word "Estimated" is added before the time there is no problem. That is what the USPS says on their website.

Perhaps something in Languages to change nomenclature? And be able to add the word "Estimated"?

​There is nothing in the language files to edit since the $response variable is pulled from USPS. Therefore, you would need to change the code mentioned above to:

// START Delivery Time Textual Change
$response = str_replace("1-Day", 'Estimated 1-Day', $response);
$response = str_replace("2-Days", 'Estimated 2-Days', $response);
$response = str_replace("3-Days", 'Estimated 3-Days', $response);
$response = str_replace("4-Days", 'Estimated 4-Days', $response);
$response = str_replace("5-Days", 'Estimated 5-Days', $response);
$response = str_replace("6-Days", 'Estimated 6-Days', $response);
$response = str_replace("7-Days", 'Estimated 7-Days', $response);
// END Delivery Time Textual Change

Change the wording to whatever you want it to be.

Edited by [email protected]
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...