UPS WorldShip XML Auto Import

I have a new “UPS WorldShip XML Auto Import” osCommerce contribution if anyone is interested… Its actually a few months old, but I never took the time to blog about it. You can find it here on the osCommerce Addons Website… http://addons.oscommerce.com/info/5519.

This contribution allows you to process your UPS Worldship orders with the click of a link. The links are located in the order’s details page.

Your are required to have: UPS Worldship software that can be ordered free here: http://www.ups.com/orderworldship?loc=en_US, an UPS account to order and use the UPS Worldship software, and a daily UPS pick-up required for use of the software.

Also, you must have UPS Worldship running, specifically… you must have their “XML Auto Import” running. Instructions straight from UPS: http://ups.com/media/en/XML_Technical_Support_Guide_Final.pdf

My future plans for this contribution are:

  • Fancy up the 7 new UPS ServiceType Links, maybe javascript, maybe css.
  • Make it so the User data is entered/configurable thru the osCommerce back admin.
  • It would be nice if tracking number could be read from UPS’s AUTO XML IMPORT output file and inputted in order comment and customer notified.
  • Some of the options are still hard coded into this contribution… ie/ number of packages and anything I haven’t noticed.

28 thoughts on “UPS WorldShip XML Auto Import

  1. a8le Post author

    Hi John,

    Sorry, it took me so long to reply. You probably figured it out by now but after looking at the files I noticed that the editable fields have been moved to the back admin portion of your shop. When installing skip step 1:

    1.) Open ups_print_worldship_xml.php … enter in your data … marked “editable variables”

    Alejandro Arbiza, briefly commented on this when he updated the module… but didn’t update the install file.

    -Thuan

  2. John

    I have downloaded your 22Mar2010 contribution for Worldship integration.

    The install.txt file references user editable fields in the ups_print_worldship_xlm.php file.

    However the zip file ups_print_worldship_xml_v1.6.zip contains 3 files named ups_print_worldship_xml.php.
    But none contain editable fields, which were present in earlier versions.

    Can you please indicate where the user information (UPS account, etc) should be located.
    Can you please indicate which OSC website folders should be used to store the different copies of the ups_print_worldship_xml.php files (e.g. catalog/admin/

    Any other updates to install.txt would be appreciated.

    Thanks,

    John

  3. BLNDEV

    I got the return shipment to work, I found that in the 2nd line, if you change the shipment option from SC to RS, it creates a return shipment label, so you just send 2 xml files to the importer…

  4. a8le Post author

    Steve,

    Sorry, but I don’t think I can help you much. Only the person(s) who have been modifying your site would be of any real help. With that said, PHP outputted errors are pretty detailed/exact. If you fix the errors one at a time, you should eventually get everything working…

    -Thuan

  5. a8le Post author

    Hi Kevin,

    After some time browsing UPS’s website, I believe I figured out why your customer’s aren’t getting their notifications. I originally coded the module using Worldship v9. Since then UPS has augmented it to v11 and updated a few things. Specifically, they have remapped Quantum View Notifications from the PACKAGE section to the SHIPMENTINFORMATION section of our XML.

    UPS Worldship Mapping

    As mentioned before, I no longer can test any Worldship work so you’ll have to do it. Try moving some of my code around, as such…

    Inside catalog/includes/ups_print_worldship_xml.php

    Look for:

       $ups.="  <qvnorreturnnotificationoption>\r\n";
       $ups.="   <qvnorreturnrecipientandnotificationtypes>\r\n";
       $ups.="    <emailaddress>" . $customers_email_address . "</emailaddress>\r\n";
       $ups.="    <ship>1</ship>\r\n";
       $ups.="   </qvnorreturnrecipientandnotificationtypes>\r\n";
       $ups.="   <subjectline>" . $qvn_subject_line . "</subjectline>\r\n";
       $ups.="   <memo>" . $qvn_memo . "</memo>\r\n";
       $ups.="   </qvnorreturnnotificationoption>\r\n";
    

    Cut those lines out then move them up into the SHIPMENTINFORMATION section, as such:

       $ups.="  <SplitDutyAndTax></SplitDutyAndTax>\r\n";
       $ups.="  <USI></USI>\r\n";
       $ups.="  <QVNOrReturnNotificationOption>\r\n";
       $ups.="   <QVNOrReturnRecipientAndNotificationTypes>\r\n";
       $ups.="    <EMailAddress>" . $customers_email_address . "</EMailAddress>\r\n";
       $ups.="    <Ship>1</Ship>\r\n";
       $ups.="   </QVNOrReturnRecipientAndNotificationTypes>\r\n";
       $ups.="   <SubjectLine>" . $qvn_subject_line . "</SubjectLine>\r\n";
       $ups.="   <Memo>" . $qvn_memo . "</Memo>\r\n";
       $ups.="   </QVNOrReturnNotificationOption>\r\n";
       $ups.=" </ShipmentInformation>\r\n";
    

    That should do it. I hope that helps, I can’t help any further. Oh, BTW, here’s the pdf showing the mapping… click me.

    -Thuan

  6. Steve

    Hi, my original orders.php wasn’t the same as the install file showed. Using the install.txt file from version 1.3 (latest I found) it says Line 416 after: default: to replace text. I’ve tried a few different ways of replacing code, leaving the if and $heading lines, removing one or both… the best I can get is the buttons show up with a list of the shipping methods underneath it. The button does nothing, clicking on one of the links like UPS Ground attempts to download the file and fails with the message it can’t download orders.php. Its trying to download from sslpowered.site.com. I’m sure I’m doing something foolish, can you point me in the right direction? Thank you.

  7. Kevin

    Thanks for your reply. But that’s not what I’m trying to do. I would be satisfied if UPS was sending the customer an email, not us. (Sure, integrating it back into their customer record on our site would be handy, but that’s not what we’re trying to accomplish.) We just want to make sure they’re notified by someone in a timely fashion. When we fill out the Worldship page manually, we ‘check’ the Quantum View Notify box in the Shipment Options box on the Options tab. You are automatically ‘checking’ the Quantum View Notify box in the Package Options box on that same tab instead. We’ve had several customers indicate they aren’t receiving the emails. When we use the other check box, we haven’t had any problems. So I was merely trying to find out how we get that other box ‘checked’. The UPS documentation online is terrible…

  8. a8le Post author

    Hi Kevin,

    Sorry it took me so long to reply. I have tried numerous times to have the tracking number updated to the comments section then sent to the customer. The end result was I got it working with IE but not Firefox. Please look at a few posts back, you’ll find my latest work on it.

    Good Luck,
    Thuan

  9. Kevin

    How do we populate the QuantumView Notify checkbox to make sure the customer is emailed the tracking number by UPS? I looked at the UPS Schema and tried a few things but kept getting errors. If we’re doing it manually in Worldship, we just have to populate the customer email address on the Ship To tab and the QuantumView Notify checkbox on the Options tab.

    Any ideas?

    Thanks.

    -Kevin

  10. Ervin Sarok

    I could not make the Return service option to work with the XML interface. Does any one has any idea how to enable the Return Service?

  11. a8le Post author

    Oh, while I am at it, I did work on this module a few months back. I attempted have the tracking number auto update into the comments section of the relevant order, then have it sent to the customer. For me it worked, but not for others. Also for now… it only works with IE and uses lax’ed Active X security.

    I am really stuck because I have no real means of testing it, the client that originally had me program the module went out of business. Another person was helping me test it but, he only has some programming experience.

    Here’s the code if anyone wants to give it a try, click here.

  12. a8le Post author

    Dawson… Its been a while since I have worked on this module, but I just briefly looked at the code. And it seems most of the fields that have something going into them are required. What are your errors?

  13. Dawson Roark

    Thuan,

    I have a question about the XML Setup for auto importing. Do you know which fields are mandatory to pass in XML to WorldShip? I keep getting failures.

    Thanks in advance. –Dawson

  14. Michael Penning

    Have you had success auto importing a shipment xml file using the withing the block? I am doing something similar Using Worldship10 and this element block always errors out with this error: The Handling Charge Percent Factor must be greater than zero.

  15. chance

    Thuan thought i would give you a heads up and let you know i updated this mod. So not it can handle more than 1 package.

    I also came up with a way to show up the selected ups method. in the show all orders view, but have not figured out how to do it in the indvidual order view.

  16. Allan

    Wondering if you ever got to add the tracking number to this. It would be awesome if the customer got the tracking number. Otherwise i’ve been using this and it works great.
    Thank you!

  17. TeckniX

    Hey Thuan,
    I’ve just stumbled upon your page and got to wonder if you ever figured out how to prompt the user for a confirmation while using the xml auto-import.
    This feature would trigger some sort of worldship window, that would force the user to review the label they are about to print, giving them the choice of printer, modify the weight, modify the shipping method and packaging.

    Also if you need some help coding, I’d be glad to help 🙂

  18. a8le Post author

    Hi Chris,

    I am sorry about the slow reply. I’ve been busy studying for a big exam. Once it is done, July 28, 2008, I’ll look into having that coded up.

    -Thuan

  19. a8le Post author

    Hi chance,

    If you are using my module, it shouldn’t be too hard to get the tracking number. But it will take some coding, which I don’t have the time for.

    Worldship XML Auto Import, spits out an output file with the tracking number. So with a little delay to wait for it, and a text look up “Tracking Number”, you should be able to read that row and copy it to osCommerce (maybe the DB).

    -Thuan

  20. chance

    This mod is great.

    I been looking into on the best way to get the tracking numbers from worldship to oscommerce. From what i read it might be easiest to do it thur worldships export feature and have it use odbc to connect worldship with the db and copy the tracking number to the db. You have any idea of the best way to go about getting the tracking number from worldship to oscommerce?

  21. a8le Post author

    Problems fixed, I added a solution that allows the site admin to select the method of UPS shipping that was sold. Right now, I am working on creating a full-blown pop-up that’ll ask to confirm everything. Again, it’ll be ready when I am. 🙂

  22. magnet4less

    My ups worldship xml auto import contrib is working perfectly except that it prints UPS GROUND on the shipping label instead of what the customer selected and paid for such as 3 Day select.

Leave a Reply

Your email address will not be published. Required fields are marked *