Jump to content


  • Content count

  • Joined

  • Last visited

Posts posted by spoot

  1. Question for spoot/michael and others:


    According to the FedEx Tag. Transaction listings, the 440 field is not applicable to home deliveries and may even cost the shippers more. But in the ship_fedex.php code there's this specific set:


    // if it's home delivery (90), add the "residential delivery flag" (440)
                   if ($HTTP_POST_VARS['service_type'] == 90) {
                           $shipData[440] = 'Y';
                   else {
                           $shipData[440] = 'N';


    Was there a specific reason for adding this?

    From FedEx: "Y if shipment is Residential Delivery. If Recipient Address is in a rural area (defined by table lookup), additional charge will be applied. This field is not applicable to the FedEx Home Delivery service."


    The Tagtransguide for others to peak at is listed here:



    I'm just asking because if it does not apply to home deliveries, and if it costs us extra to use it, why use it?  I'm probably missing something here but any help/insight would be appreiciated.


    I think that's in there because I misunderstood the purpose of the residential delivery flag!


    So "home delivery" is different than "residential delivery?" I am confused. But that needs to be fixed - those lines could probably just be commented out. I hope this hasn't cost too much $$...

  2. When having to specify Ste B (Suite B) or Apt 10, does Fedex require this to be on a 2nd line, or can you just place a comma after the street name (eg 13 Elm St, Apt 10)?  Should I get rid of the "suburb" and replace it with Address 2?




    That's what I've done - change "suburb" to "address 2." Obviously there are ways to avoid this, but "suburb" needs to go away and "address 2" is useful, so it's a good move. It should be that way in the initial install.


    Are there countries that use "suburb" as a standard address line? I dunno.

  3. Trying to install this contibution for the first time on a fresh install of osC. I recieve this error and not able to lauch osC admin. I'm able to login to my phpMyAdmin fine. Would appreciate some help, thanks.


    Warning: mysql_connect(): Access denied for user: 'pearlsea_pearl@localhost' (Using password: YES) in /home/compumod/public_html/admin/includes/functions/database.php on line 19

    Unable to connect to database server!



    Did you install the latest version (1.07) of the contribution?


    You'll have to either reinstall oscommerce, or correct the entries for DB_SERVER_USERNAME and, possibly, DB_SERVER_PASSWORD (and check the rest of the database variables while you're at it).



  4. Has anyone gotten anywhere with the signature required option?


    Rich -


    Try updating ship_fedex.php, shortly after line 123, in the $shipData array. What you need to add, I believe, is tag 1208, the "No Indirect Delivery Flag."


    Try changing:


    0=>  $transaction_code // transaction code
    ,16=>   $delivery_state // delivery state




    0=>  $transaction_code // transaction code
    ,1208=> 'Y' // signature required?
    ,16=>   $delivery_state // delivery state


    This is untested, please post back here if it works...


    - Michael

  5. (Yay! I can finally contribute to this contribution!  :D )


    Chris B.


    Chris -


    Right on. It's great to see all these updates, & especially to see the "cancel" bug fixed - that's been a pain in the butt.


    If/when you add your contribution, be sure to consolidate (if necessary) releases 1.06 and 1.07 - I believe ship_fedex.php was altered separately by both.


    Alright great work thanks everyone!



  6. Don't get me wrong - I love all of the add-ons and the core product itself.  I'm just a little frustrated.  If it were my contrib, I'd want it to work properly, otherwize it would "bug" the heck out of me knowing there are issues, and that it may be preventing others from using it.


    I guess I'll take a look at the code and see if I can figure it out, then post it here.


    That's the spirit.


    It's true that it's annoying to know that your project has bugs; and because of that, they'll eventually be fixed. But you've got to prioritize, & I prioritize this particular project well below a stable income and about 14 other things in my life.


    But it'll get done, esp. if everyone dives into the code. If you can't fix it, you may be able to find the place(s) in the code where things are going awry - that'd speed things along, I'm sure.


    Sorry about the lecture.



  7. 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 -


    I'm also busy, with a move and many other things. If these bugs were small, I may have time to look at them in the next week or so, but they don't sound small to me.


    Also: everyone here does this in their spare time, and as I'm sure you know, sometimes there's not much spare time to go around. There's nothing odd about a person posting a substantial & valuable update to an open-source application, then getting swamped by other projects.


    Can we get these two issues corrected ASAP?

    Please try to avoid showing impatience with the people who are providing this software, and enhancements to this software, at no cost to you. The best option, if you're in need of an immediate fix, is to hire a freelance PHP coder.



  8. 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.



  9. I'm trying to figure out how to get labels to print out correctly on my thermal printer. I'm using Zebra 2844. Will labels with this contribution print out correctly in 4X6 size or is it huge size like Fedex Shipping Manager software?


    Thermal printers aren't supported yet. There may be a way to adjust the layout of the label display page to make it print, but it hasn't been done yet.

  10. Ok  I am asking,

    I have made several changes in the files,

    I changed the delivery info so that it puts in the customers company if one exists.

    I set the default Invoice # to match the OSC order # (still input field and easily changed)

    Added the fields to all files that were causing the curl error and set them to false.

    Set default order status to processing, instead of shipped,  I mark mine as shipped after fed ex picks up in the evening.

    Fixed the Abbreviations file for state of Maryland

    My catalog has the second address line mod added to it so That is also an option, Added instructions to the install.txt to add the second address line if your using it.


    Would you like me to send you a set modified as I have, or would you like me to post them to contribs with these modifications noted.


    Let me know.  I hope this helps.


    Oh, nice work. This helps a ton.


    There's one change I'd like to make: since the curl error is not consistent across systems, I'd like to comment out the changes & add the error message to the readme & install files.


    If you could send your changes to me (michael at wrds dot net), that would be great.

  11. Your not disabling Curl.

    All you are doing is stopping the Peer Verify Request.

    It would seem that on some servers, usually a windows box this command hangs the routine and stops the php script from running.


    The same issue comes up with alot Mods, link the LinkPoint Processing module, that is the one I disovered this on.


    Keep that in mind when ever you find this cUrl error and another thing.


    This one I picked up on also,  If you get a script with that same or similar cUrl error  look for this set of commands

    function _sendCurl() {

                    $ch = curl_init();

                    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

                    curl_setopt($ch, CURLOPT_URL, $this->fedex_uri);

                    curl_setopt($ch, CURLOPT_HEADER, 1);

                    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);


    If you do not see the:

    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);  (in an error situation False would be true  or  1)

    Then Add this line and set to false, if that does not fix it  try changing false to a 0


    Glad it helped.


    This is a huge help. This is a common & strange error, and I've been unwilling to tell anyone to edit fedexdc.php, since I didn't build it and it works well as is, most of the time. I'll add this to the documentation, thank you -



  12. Regarding certification.  FYI, If you already have a Fedex Shipping manager account where you can print labels by logging into Fedex.com, you don't need to go through the certification process for fedexdc.php because your account is already on the production server!  I just did it and sucessfully sent a package.


    I'm currently working on an install for a client, and checked to see if this were true. According to FedEx, my client (who uses the online Ship Manager) is not on the production server:


    your customer is currently using Fedex Ship Manager at FedEx.com which is a completely different shipping solution from FedEx Ship Manager API\Direct


    But you're saying you just changed your settings to "production" & you could ship packages right away? It's worth a try...

  13. Does your program pass such information to the FedEx Label such as Reference #, Invoice #, etc.?


    It doesn't currently pass this info, but there's room for it to do so. I believe the only way to add this to the application is to provide a field where you could add an invoice or reference number when requesting the shipment. It can't easily be automated, as different users will want to include different reference numbers; but it'd be easy to add a form field that allows user input of any pertinent number.



  14. Did you ever figure out how to add the dry ice field? It is something I need to be able to do as well.


    There are so many fields that need to be available: dry ice, corrosives, a hold-at-address option, etc. I'm working on a test scenario script, & will use the opportunity to figure out how to get all these variables into the request & on the label. Please don't expect it terribly soon, but know I'm working on it.



  15. Spoot, I was just wondering if you gave any more thought to the test label script. I mentioned it in the other thread before it got deleted. Any chance you are working on that? I ask only because my store is now live so hainvg to sit and make new customers for each transaction gets to be quite tedious.


    Billy -


    You're probably not around here anymore, but just so you know, I've started working on a test label script. It's way too involved - all those test scenarios, you know - but it'll make implementation much easier, I'm glad you brought it up.



  16. 1.  Fixing the cancel shipment so that it actually DOES cancel the shipment with Fedex?  Also there was a problem with the date format for cancelling shipments.  Anyone get that fixed?


    I'll talk to FedEx sometime in the next few weeks & see what the story is with cancel not cancelling w/them. It should be working - if we don't get a "success" signal from their servers, we get an error, too.


    Regarding the date format - I saw it, and was annoyed by it. But I just did a fresh install on a new site, and the date format error is gone. I'm really not sure what the story is, but with a clean install, it works.



    2.  Automatically emailing the customer the tracking number when a label is generated.  I just generated a label to myself as the customer and the module didn't send me the tracking number via email.  It is in the comments section of the order, but no email.


    This'll take a little bit of work, but it's on the list. Probably in the admin section there'll be the option to email or not email the customer.

  17. Tracking Error:


    I have successfully shipped a package and get the tracking info correctly if I go to fedex.com to track it or if I hit the track button from the OSC order page.


    However, if I click on "track this shipment" as a customer on the order history page, "account_history_info.php",  (after logging in as a customer) I get the following error:


    PACKAGE_ERRORFedEx Return Error 9982 : Invalid or missing Search Value.


    Looks like it is using "track_fedex.php". What is wrong that I am getting this error?  Should I post my code for track_fedex.php?


    Thanks,  Charlie


    Charlie -


    Rather than post track_fedex.php, could you post the URL you're at when you get the error 9982?


    Thanks -



  18. I don't have a thermal printer handy but I'll try and convert this C code to PHP.


    I've been trying to come up with a solution for this, & I've basically given up. My understanding is that we're trying to call a local printer with no user interaction - that is, we don't get a "print" dialog, we're just going to stream the print data from FedEx, across the server, to the thermal printer.


    I asked the guy who wrote fedexdc.php how to do it, and he said, as if it were a walk in the park, "just open a pipe to the printer." I looked into this - but I don't see how it's done without significant client-side activity. My impression is that there would need to be a plug-in or applet or huge javascript that holds the printer data, calls the printer, & sends the data along.


    Hopefully you aren't seeing the same stumbling blocks that I am, or you see them as much smaller than I do.


    It's also possible to print the .png label to a thermal printer. My workaround solution is going to be to make a new label display template specifically for thermal printers, something that's easy to adjust & correct.

  19. I know this relates to fedexdc.php  file specifically to the variables at the top.


    Are you sure? It's a cURL error, & the certificate location isn't related to those variables - I don't think it is, anyway... does the error change when you change those variables? Were you ever able to get labels from the FedEx test server?


    At any rate -


    $server variable should say 'test' or 'production', whichever is appropriate


    $request_referer variable should say 'blackswanhome.com'

  20. If you're confused as to where to go after you've got the test labels working, here's some useful information from Federal Express:


    Once you have finished developing your custom application, call FedEx Technical Support at 1-800-810-9073 from 7:00 am to 12:00 am Central Standard Time to initiate the testing and certification process. Within 5 to 10 minutes after speaking with FedEx Technical Support, you will receive, via e-mail, a set of test scripts. These are hypothetical shipping and tracking scenarios for FedEx Express and FedEx Ground services designed to make sure your application is fully compatible with FedEx systems before you go to the production environment. You must verify that your custom application can process these scripts appropriately.


    To confirm the ability of your application to process the test scripts, you will need to send shipping labels to FedEx for certification. The test will ensure that the barcode on your labels can be processed and scanned by FedEx Operations. FedEx will evaluate the results of the test, a process that takes approximately 48 hours, and will then notify you of your application?s success or failure. If the test is successful, you will be considered certified to ship with WIS. When you are ready to go into production, call FedEx Technical Support and request to be setup in our production server environment. You can then begin to enjoy the rewards of seamlessly integrated FedEx Express shipping, tracking, and rating.

  21. OK - Figured it out.  Need to have a FedEx Shipped order first.


    So I tested it, and it looks great - will save a lot of time.


    Now, some questions:


    When I ship on FedEx.com,

      > I add a reference # to the label

      > I use FedEx's address checking feature

      > I have FedEx send the customer an e-mail and add a personal note.

      > I print the shipment information, which includes the price


    Can I do any of this with this contrib?


    This contribution currently does none of these things, but it could do them pretty easily.


    Where do you get the reference number that goes on the label?


    What does the address checking feature do? Since the address has to go through FedEx, this may be happening already - this contribution uses the same back end (I think) as FedEx's online stuff.


    OSCommerce is already set up to email customers when their order status changes, so it could alert the customer & sent them the tracking number.


    When you say you print the shipping information + price, is this for internal use? This application doesn't do that, but it wouldn't be hard to add a shipping report to osc.