Jump to content
Sign in to follow this  
spoot

Automated FedEx Labels

Recommended Posts

Any ideas on the Insurance, Signature, etc?

 

I'm kinda hesitant to use it on eBay items because PayPal requires signatures on orders over $250, and I don't see a way to add insurance, so I wouldn't want to send out anything worth more than $100 right now.

Share this post


Link to post
Share on other sites

The Jackal:

 

I noticed something else on version 1.5, sometimes when you are only shipping one package it goes to the second page still and loses the invoice #. Additionally, when I've tested multiple packages the invoice # is lost as well.

 

Any suggestions on how to fix this?


Most Valuable OsCommerce Contributions:

Also Purchased (AP) Preselection (cuts this resource hogging query down to nothing) -- Contribution 3294

FedEx Automated Labels -- Contribution 2244

RMA Returns system -- Contribution 1136

Sort Products By Dropdown -- Contribution 4312

Ultimate SEO URLs -- Contribution 2823

Credit Class & Gift Voucher -- Contribution 282

Cross-Sell -- Contribution 5347

Share this post


Link to post
Share on other sites

The 2nd page appears becoz there is more than 1 item on the order. This is intended behavior when I coded it.

 

However I will look into invoice # problem.


- The Jackal

Share this post


Link to post
Share on other sites

I've noticed that when you log into your account to track the shipment it brings you to a different page that is not secure. When you then click on the continue button it redirects you back to /catalog. Is there anyway to have stay logged into the customer's account so that it is still secure?

Share this post


Link to post
Share on other sites

I just noticed that all of this pops up at the bottom of the page

 

1062 - Duplicate entry 'a68893acadb01214d6d0e7dc3dbe4229' for key 1

insert into sessions values ('a68893acadb01214d6d0e7dc3dbe4229?', '1111868852', 'cart|O:12:\"shoppingcart\":4:{s:8:\"contents\";a:0:{}s:5:\"total\";i:0;s:6:\"weight\";i:0;s:12:\"content_type\";b:0;}language|s:7:\"english\";languages_id|s:1:\"1\";currency|s:3:\"USD\";navigation|O:17:\"navigationhistory\":2:{s:4:\"path\";a:1:{i:0;a:4:{s:4:\"page\";s:9:\"index.php\";s:4:\"mode\";s:6:\"NONSSL\";s:3:\"get\";a:1:{s:6:\"osCsid\";s:33:\"a68893acadb01214d6d0e7dc3dbe4229?\";}s:4:\"post\";a:0:{}}}s:8:\"snapshot\";a:0:{}}')

[TEP STOP]

1062 - Duplicate entry 'a68893acadb01214d6d0e7dc3dbe4229' for key 1

insert into sessions values ('a68893acadb01214d6d0e7dc3dbe4229?', '1111868852', 'cart|O:12:\"shoppingcart\":4:{s:8:\"contents\";a:0:{}s:5:\"total\";i:0;s:6:\"weight\";i:0;s:12:\"content_type\";b:0;}language|s:7:\"english\";languages_id|s:1:\"1\";currency|s:3:\"USD\";navigation|O:17:\"navigationhistory\":2:{s:4:\"path\";a:1:{i:0;a:4:{s:4:\"page\";s:9:\"index.php\";s:4:\"mode\";s:6:\"NONSSL\";s:3:\"get\";a:1:{s:6:\"osCsid\";s:33:\"a68893acadb01214d6d0e7dc3dbe4229?\";}s:4:\"post\";a:0:{}}}s:8:\"snapshot\";a:0:{}}')

[TEP STOP]


Warning: Unknown(): A session is active. You cannot change the session module's ini settings at this time. in Unknown on line 0

 

Any thoughts?

Share this post


Link to post
Share on other sites

I love oscommerce and all of you who have contributed along the way. I only hope that I can be of some help in the near future.

 

So I it looks like I have a successful install on my server and I added my self to the test server (pat pat).

 

Here's my question: The FedEx developer asked if my connection was XML or tagged and API or direct. I answered XML and API. Did I get it right?

 

Again, fantastic contribution and thanks for the excellent work. Especially Michael who looks as though he might have forfeited a couple of months of his life to make this happen.

 

- piston

Share this post


Link to post
Share on other sites

If you've followed the install directions. It seems like you should be ready to roll.

 

The follwing is highly suggested:

 

For troubleshooting purposes, it's beneficial to change line 14 in ship_fedex.php from:

 

$debug = 0;

 

to:

$debug = 1;

 

- piston

Share this post


Link to post
Share on other sites

I don't know if anyone hase brought this up before.

My rate quotes are very high. I captured the outgoing and incoming strings from fedex. They give me quote of $3.68 and my screen shows $7.21. I did it again for a heavier package fedex string says $5.86 and it shows up as $7.29 on the screen.

 

Jeff

Share this post


Link to post
Share on other sites
I don't know if anyone hase brought this up before.

My rate quotes are very high. I captured the outgoing and incoming strings from fedex. They give me quote of $3.68 and my screen shows $7.21. I did it again for a heavier package fedex string says $5.86 and it shows up as $7.29 on the screen.

 

Jeff

 

Jeff,

 

Check in the FedEx Real Time Quotes Shipping module to see if "Show List Rates" is set to True (or Yes).

Share this post


Link to post
Share on other sites

I'm getting the following error when I choose "Express Saver" shipping option. Any ideas?

 

1062 - Duplicate entry '' for key 2

 

insert into shipping_manifest (delivery_id, orders_id, delivery_name, delivery_company, delivery_address_1, delivery_address_2, delivery_city, delivery_state, delivery_postcode, delivery_phone, package_weight, package_value, oversized, pickup_date, shipping_type, residential, cod, multiple, tracking_num) values (...personal info data here, omitted for obvious reasons...)

 

It's only when I choose the express saver option.

 

 

Also, I'm getting a broken image if it does go through. Along with the links at the bottom are not formatted with "Print" and "Back". Here is pic:

broken.gif

 

And here is code:

<?php

 require('includes/application_top.php');

$oID = $HTTP_GET_VARS['oID'];
$active = $HTTP_GET_VARS['active'];

// check to see if there are multiple packages in this shipment
$packages_query = tep_db_query("select multiple from " . TABLE_SHIPPING_MANIFEST . " where orders_id = " . $oID . " order by multiple asc");

// if there's no other indication, first label should be active label
if (!$active) {
 $active = 1;
 }

$multiple = array();

while ($packages = tep_db_fetch_array($packages_query)) {
 // if 'multiple' is populated, get all values into an array
/*  
 echo '<pre>';
 echo 'packages is <br>';
 print_r($packages);
 echo '</pre>';
*/  
 if ($packages['multiple']) {
	 $multiple[] = $packages['multiple'];
	 }
 }

// get the highest value from $multiple, it's the last label
if ($multiple) {
 $last = max($multiple);
 }

// now get the tracking number for the selected (active) label
if ($multiple) {
 $tracking_num = tep_manifest_data($oID,$active);
 }
elseif (!$multiple) {
 $tracking_num = $HTTP_GET_VARS['num'];
 }

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
 <head>

   <style type="text/css">
   <!-- 
 table { 
	 width: 675; 
	 border-top: 1px dotted black; 
	 }
 td {
	 font-family: Arial, sans-serif; 
	 font-size: 12px; 
	 }
 -->
   </style>
   <script language="JavaScript1.1" type="text/javascript">
   var NS4 = (document.layers) ? true : false;var resolution = 96;if (NS4 && navigator.javaEnabled()){var toolkit = java.awt.Toolkit.getDefaultToolkit();resolution = toolkit.getScreenResolution();}
   </script>
   <script language="JavaScript" type="text/javascript">
   document.write('<img WIDTH=' + (675 * resolution )/100 + '<img HEIGHT=' + (467 * resolution )/100 + ' alt="ASTRA Barcode" src="images/fedex/<?php echo $tracking_num; ?>.png">');
   </script>
   <title></title>
 </head>
 <body>
   <table border="0" width="100%">
     <tr>
       <td colspan="3">
         <?php echo tep_draw_separator('pixel_trans.gif', 1, 100) ?>
       </td>
     </tr>
     <tr>
   <td align="center">
        <a href="#" onclick="window.print(); return false"><img src="<?php echo tep_image_button('button_print.gif', '', IMAGE_ORDERS_PRINT) ?>">
       </td>
   <td align="center">
<?php

// links for multiple packages

if ($multiple) {
 if ($active != 1) {
	 echo '<a href="?oID=' . $oID . '&active=' . ($active-1) . '"><-- previous</a>   ';
	 }
 else {
	 echo '<-- previous';
	 }
 foreach ($multiple as $package_num) {
	 if ($active != $package_num) {
   echo '   <a href="?oID=' . $oID . '&active=' . $package_num . '">' . $package_num . '</a>   ';
   }
	 else {
   echo ' <b>' . $package_num . '</b> ';
   }
	 }
 if ($active != $last) {
	 echo '   <a href="?oID=' . $oID . '&active=' . ($active+1) . '">next --></a>';
	 }
 else {
	 echo '   next -->';
	 }
 }  
?>
       </td>
   <td align="center">
         <a href="orders.php?oID=<?php echo $oID; ?>"><img src="<?php echo tep_image_button('button_back.gif', IMAGE_ORDERS_BACK) ?>" border="0"></a>
       </td>
     </tr>
   </table>
 </body>
</html>

<?php

function tep_manifest_data($oID, $active) {
if (!$active) {
 $packages_query = tep_db_query("select tracking_num from " . TABLE_SHIPPING_MANIFEST . " where orders_id = " . $oID . "");
 }
else {	
 $packages_query = tep_db_query("select tracking_num from " . TABLE_SHIPPING_MANIFEST . " where orders_id = " . $oID . " and multiple = '" . $active . "'");
 }
while ($val = tep_db_fetch_array($packages_query)) {
 $tracking_num = $val['tracking_num'];
 }
return $tracking_num;
}
?>

 

Any help would be appreciated!

 

Chris B.

Share this post


Link to post
Share on other sites

Hi,

 

I'm still using v.1.03. I just noticed one little problem with the insurance. Our Fedex shipping orders usually value around $100, sometimes less sometime more. If it's more than $100, I just declare $100 value so that there is no additional insurance charge.

 

With the automated fedex label contribution, the full value from the order is passed to Fedex so I always have to pay $1.2 extra for the declared value. Is there any way to alter it so that the maximum value doesn't exceed $100?

 

Thanks.

 

Wendy

Share this post


Link to post
Share on other sites
Hi,

 

I'm still using v.1.03.  I just noticed one little problem with the insurance.  Our Fedex shipping orders usually value around $100, sometimes less sometime more.  If it's more than $100, I just declare $100 value so that there is no additional insurance charge.

 

With the automated fedex label contribution, the full value from the order is passed to Fedex so I always have to pay $1.2 extra for the declared value.  Is there any way to alter it so that the maximum value doesn't exceed $100? 

 

Thanks.

 

Wendy

 

You should be able to edit the ship_fedex.php file and make this change (around line 231):

package_value => $order_value,

to:

package_value => '100',

 

No guarantees but that SHOULD work. It'd be hardcoded so no matter what the value of the package is, it would only be insured for $100 - meaning if you wanted more insurance you'd have to change it back or print a label from the website instead.

Share this post


Link to post
Share on other sites
The 2nd page appears becoz there is more than 1 item on the order.  This is intended behavior when I coded it.

 

However I will look into invoice # problem.

 

Yes, however, say 3 items are ordered, your routine wants to put it in 3 boxes. Well, all of my items can fit in one box, so I change the # of shipments to 1, and I still get the second page (even though it's one box) and the additional fields (reference, invoice,etc) don't print on the label - just like was mentioned above.


John Skurka

Share this post


Link to post
Share on other sites

Sorry, I haven't the time to put out a new fix, but it should be a simple fix to propagate the inv# values, which I missed out in testing because it was a newly added 1.04 feature. :blush:

 

The concept behind my coding was Pareto 80-20 principle. 80% of the orders are single item shipments. If the module to handle single item orders is speeded up, 80% of the problem is efficiently solved. Previously, all the orders have to go through 2 screen. Now, its only for orders with more than 2 items, (regardless if you choose only 1 package in the screen). It's better than always 2 screens, no? :)


- The Jackal

Share this post


Link to post
Share on other sites
Now, its only for orders with more than 2 items, (regardless if you choose only 1 package in the screen).  It's better than always 2 screens, no? :)

 

But wouldn't it be easier to just check the number of packages (not the number of items) and if it is greater than 1, then you go to the second screen?


John Skurka

Share this post


Link to post
Share on other sites
I love oscommerce and all of you who have contributed along the way. I only hope that I can be of some help in the near future.

 

So I it looks like I have a successful install on my server and I added my self to the test server (pat pat).

 

Here's my question: The FedEx developer asked if my connection was XML or tagged and API or direct. I answered XML and API. Did I get it right?

 

Again, fantastic contribution and thanks for the excellent work. Especially Michael who looks as though he might have forfeited a couple of months of his life to make this happen.

 

- piston

 

Piston -

 

I'm glad you like the mod. It's nice to come back here after a while away and see updates & activity etc. It wasn't a total forfeit, but it's fairly easy to get obsessed over projects like this.

 

Your answer was 1/2 right. This mod uses the API only.

 

Michael

Share this post


Link to post
Share on other sites

Hello

 

I have got a fedex account. I have got the fedex real time quote contribution working.

 

I went through all the steps to get the labels working. When I submit a label request I get this error.

 

This transaction could not be completed. Please note the error message below.

 

ERROR: FedEx Return Error F84A : Invalid recipient province code for Canada

 

Do I just update the abbreviations.php .

 

Also if the fedex real time quote contribution working do I still have to get fedex to set me up on there test server.

 

And in which file do I turn on the debugging.

 

 

Any help would be great, I think this module would be very helpful. Thanks for spending the time writing it.

 

D.

Share this post


Link to post
Share on other sites

I've been trying to get this contribution working for some time now. I'm almost there (I think).

 

I get the following error message:

 

ERROR: FedEx Return Error F051 : Meter logon failed.

 

So I contact FedEx and the tech support guy says I need to send a "Subscription Transaction" through this contribution. However, I don't know how to do that, nor have I seen anything about this in this topic.

 

The meter works for the real time quotes, but doesn't work for this. Any ideas, suggestions, or how to make a subscription transaction?

 

Thanks!

 

Chris B.

Share this post


Link to post
Share on other sites
I've been trying to get this contribution working for some time now. I'm almost there (I think).

 

I get the following error message:

 

ERROR: FedEx Return Error F051 : Meter logon failed.

 

So I contact FedEx and the tech support guy says I need to send a "Subscription Transaction" through this contribution. However, I don't know how to do that, nor have I seen anything about this in this topic.

 

The meter works for the real time quotes, but doesn't work for this. Any ideas, suggestions, or how to make a subscription transaction?

 

Thanks!

 

Chris B.

 

The easiest way to do that is enable the FedEx module and then go to your store, put something in your cart, and select one of the FedEx shipping options. If I remember correctly you dont need to confirm the order and actually finish checking it out...you just need to add something to the cart and select FedEx and it will obtain a meter number.

Share this post


Link to post
Share on other sites
The easiest way to do that is enable the FedEx module and then go to your store, put something in your cart, and select one of the FedEx shipping options.  If I remember correctly you dont need to confirm the order and actually finish checking it out...you just need to add something to the cart and select FedEx and it will obtain a meter number.

 

We're not using the FedEx shipping module. My client wants to have flat shipping rates. I do have the FedEx module installed, but not enabled.

 

I was getting broken images before, then I realized that my "images" folder wasn't chmod 777. Once I changed that to 777, double checked fedex was 777, I get the "Meter logon" error.

 

I didn't think I had to have the FedEx shipping module enabled, just installed.

 

Thanks!

Share this post


Link to post
Share on other sites
Sorry, I haven't the time to put out a new fix, but it should be a simple fix to propagate the inv# values,

 

Two other things that are more important, and need to fixed right away:

 

(1) When more than 1 shipment is the default and is manually changed back to 1, the shipping weight fractions are dropped. That is if the weight is put in as 4.4 lbs, the label is printed for 4 lbs. This can result in additional charges for the shipper if the weight is not correct. I'd prefer to have the correct weight on the label as entered.

 

(2) The contrib is not using the tare weight (or additional weight) setting from OSC, but is just using the total weight calculated from the products. Whenever a label is printed, the weight must be manually changed.

 

Can we get these two issues corrected ASAP?

 

Thanks.


John Skurka

Share this post


Link to post
Share on other sites

I know about the 2 issues above but I am just so busy at the moment. I am currently organising two conferences one after another. So I guess you have to wait a while or even better, help yourself and post the updates for everyone!


- The Jackal

Share this post


Link to post
Share on other sites
I know about the 2 issues above but I am just so busy at the moment.  I am currently organising two conferences one after another.  So I guess you have to wait a while or even better, help yourself and post the updates for everyone!

 

Michael (spoot) - any chance you can help us out with this? I didn't write the module, so I have no idea as to how to get it fixed (nor am I that proficient with PHP), so I would appreciate if someone could get these fixed.

 

It seems odd that someone would post an enhancement to an already great time saving contribution, but then not have time to correct a few small bugs.


John Skurka

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×