Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

New UPS XML Shipping Module available


Recommended Posts

I had the same issue on a client's store. Apparently the newer versions of PHP don't set PHP_VERSION correctly even though the manual says it does. You could try testing (PHP_VERSION_ID > 50207) and see if that works. Or just take the old PHP 4.x code out, since nobody uses that anyway.

 

Regards

Jim

See my profile for a list of my addons and ways to get support.

Link to comment
Share on other sites

  • 1 month later...

hello support,

 

i am using oscommerce 2.3.4 gold, UPSXML_v1_5 add on.  we use ups exclusively.

 

this problem(over 150 lbs) has been discussed but i did not see a way to solve it--for our needs.

 

i saw people complaining they are getting an error over 150 lbs,

 

we do not receive an error it just breaks up into packages,, which is nice.\

 

ultimately, we would like to have it not break into packages.

 

When it reaches a single item weighing over 150, we would instruct our customers to call to our brick and mortar to get the shipping charges.

 

i installed an addon Request freight quote.

 

 

so my problem is how to stop it breaking it up into packages and turn off ups shipping options when it is over 150.

 

see attached for my admin>configuration> shipping/packaging.


 

post-279530-0-25091900-1493571315_thumb.jpg

Edited by zpupster
Link to comment
Share on other sites

Set your Maximum Package Weight to a very large number to stop osCommerce from breaking the shipment up into smaller packages. UPS should refuse to return  a shipping estimate for packages over 150 lbs, which would leave only your Freight module.

 

Regards

Jim

See my profile for a list of my addons and ways to get support.

Link to comment
Share on other sites

Thank You Jim,

 

this worked like a charm,

 

the request freight quote still appears for packages under the weight set.

 

is there a line i could add to stop the freight quote appearing for weights under weight set to turn off UPS.

 

Craig

Link to comment
Share on other sites

You would probably have to add code to the Freight module to do that. I'm not familiar with that module so I'm not certain. You might want to ask in the support thread for that module.

 

Regards

Jim

See my profile for a list of my addons and ways to get support.

Link to comment
Share on other sites

Jim,  my thinking is like this,  if i add the global  variable like this to class method in  the freight request module below:

global $order, $shipping_weight,

and put a statement in like this:

$shipping_weight = ($shipping_weight < 150 ? 150 : $shipping_weight);

and this is where i have trouble to turn off request freight module:

 

if ($check_flag == false) {
          $this->enabled = false;
        }

this is the request freight module that appears all the time, we would like it to appear only if the weight is over 150.

 

 

<?php
/*
  $Id: rfq.php,v 1.3 2006/02/13 14:29:56 naegle Exp $
  Based upon flat.php / spu.php by M. Halvorsen (http://www.arachnia-web.com)




  osCommerce, Open Source E-Commerce Solutions
  http://www.oscommerce.com






  Copyright (c) 2003 osCommerce


  Released under the GNU General Public License
  
   CHANGES: NOV-20-05
   - formatted to work with latest checkout procedure
   - updated the db queries
   CHANGES: NOV-21-05
   - included icon
   - fixed table configuration
   CHANGES: FEB-13-06
    - Added Disable Zone
  
*/


  class rfq {
    var $code, $title, $description, $icon, $enabled;


// class constructor
    function rfq() {
 global $order;
      $this->code = 'rfq';
      $this->title = MODULE_SHIPPING_RFQ_TEXT_TITLE;
      $this->description = MODULE_SHIPPING_RFQ_TEXT_DESCRIPTION;
      $this->sort_order = MODULE_SHIPPING_RFQ_SORT_ORDER;
      $this->icon = DIR_WS_ICONS . 'shipping_rfq.gif';
      $this->enabled = ((MODULE_SHIPPING_RFQ_STATUS == 'True') ? true : false);
 if ( ($this->enabled == true) && ((int)MODULE_SHIPPING_RFQ_ZONE > 0) ) {
        $check_flag = false;
        $check_query = tep_db_query("select zone_id from " . TABLE_ZONES_TO_GEO_ZONES . " where geo_zone_id <> '" . MODULE_SHIPPING_RQF_ZONE . "' and zone_country_id <> '" . $order->delivery['country']['id'] . "' order by zone_id");
        while ($check = tep_db_fetch_array($check_query)) {
          if ($check['zone_id'] < 1) {
            $check_flag = true;
            break;
          } elseif ($check['zone_id'] == $order->delivery['zone_id']) {
            $check_flag = true;
            break;
          }
}


if ($check_flag == false) {
          $this->enabled = false;
        }
      }
    }


// class methods
  
    function quote($method = '') {
 global $order;


      $this->quotes = array('id' => $this->code,
                            'module' => MODULE_SHIPPING_RFQ_TEXT_TITLE,
                            'methods' => array(array('id' => $this->code,
                                                     'title' => MODULE_SHIPPING_RFQ_TEXT_WAY,
                                                     'cost' =>  MODULE_SHIPPING_RFQ_COST)));


      if (tep_not_null($this->icon)) $this->quotes['icon'] = tep_image($this->icon, $this->title);


      return $this->quotes;
    }


    function check() {
      if (!isset($this->_check)) {
        $check_query = tep_db_query("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = 'MODULE_SHIPPING_RFQ_STATUS'");
        $this->_check = tep_db_num_rows($check_query);
      }
      return $this->_check;
    }


    function install() {
      tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Enable Shipping Quotes', 'MODULE_SHIPPING_RFQ_STATUS', 'True', 'Do you want to offer shipping quotes?', '6', '6', 'tep_cfg_select_option(array(\'True\', \'False\'), ', now())");
      tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Quote Fee', 'MODULE_SHIPPING_RFQ_COST', '0.00', 'What is the Quote Fee?', '6', '6', now())");
      tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, use_function, set_function, date_added) values ('Shipping Zone', 'MODULE_SHIPPING_RFQ_ZONE', '0', 'If a zone is selected, DISABLE this shipping method for that zone.', '6', '0', 'tep_get_zone_class_title', 'tep_cfg_pull_down_zone_classes(', now())");
      tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Sort Order', 'MODULE_SHIPPING_RFQ_SORT_ORDER', '6', 'Sort order of display.', '6', '6', now())");
    }


    function remove() {
      $keys = '';
      $keys_array = $this->keys();
      for ($i=0; $i<sizeof($keys_array); $i++) {
        $keys .= "'" . $keys_array[$i] . "',";
      }
      $keys = substr($keys, 0, -1);


      tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key in ('" . implode("', '", $this->keys()) . "')");
    }


    function keys() {
      return array('MODULE_SHIPPING_RFQ_STATUS', 'MODULE_SHIPPING_RFQ_COST', 'MODULE_SHIPPING_RFQ_SORT_ORDER', 'MODULE_SHIPPING_RFQ_ZONE');
    }
  }
?>

take a look, 

if you can advise me that would be great!!

 

ty again,

 

craig

Link to comment
Share on other sites

Try this code in place of the second block you provided:

if( $shipping_weight > 150 )  $this->enabled = false;

You'll need the global in your first block of course.

 

Regards

Jim

See my profile for a list of my addons and ways to get support.

Link to comment
Share on other sites

  • 3 weeks later...
On 2017-5-26 at 6:03 AM, GWFoster said:

Is there a way to hire someone to install this module that is trustworthy onto my server for a client?

 

I would recommend @kymation @Jack_mcs or @burt who all have a good reputation and are quite active in the forums. I'm sure others will chime in with their own recommendations.

osCommerce user since 2003! :thumbsup:

Link to comment
Share on other sites

  • 10 months later...
Quote
United Parcel Service United Parcel Service
This module supports only xpci version 1.0001 of the UPS Rates Interface. Please contact the webmaster for additional assistance.

I just signed up and received the UPS rates access key but now I get this error.

Link to comment
Share on other sites

Please don't bump your post. If you don't get any replies, try giving more information. We can't help without knowing the version of your osCommerce install and the version of your UPSXML module.

Regards

Jim

See my profile for a list of my addons and ways to get support.

Link to comment
Share on other sites

Quote
United Parcel Service United Parcel Service
This module supports only xpci version 1.0001 of the UPS Rates Interface. Please contact the webmaster for additional assistance.

Installed Version: osCommerce Online Merchant v2.3.4

UPS XML Rates v1.6.1 for osCommerce 2.3.4 2017-04-11

Quote

Error from cURL: Error [60]: SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed experienced by customer with id 1 gino difilippo jr on 2018-04-17 18:58:34

 

Edited by Gino D
Link to comment
Share on other sites

Your SSL cert may be outdated. Try the fix from this thread: https://www.oscommerce.com/forums/topic/410770-paypal-app-v5000/?do=findComment&comment=1768354

If that doesn't work, try the change in step 5 of the UPSXML_install.txt.

Regards

Jim

See my profile for a list of my addons and ways to get support.

Link to comment
Share on other sites

That means that the cURL extension is not installed on your server. The cURL extension is required for newer versions of osCommerce, so you may have additional problems caused by this. I suggest that you get your host to install cURL, or find a host that meets the minimum requirements for osCommerce.

Regards

Jim

See my profile for a list of my addons and ways to get support.

Link to comment
Share on other sites

4 minutes ago, kymation said:

That means that the cURL extension is not installed on your server. The cURL extension is required for newer versions of osCommerce, so you may have additional problems caused by this. I suggest that you get your host to install cURL, or find a host that meets the minimum requirements for osCommerce.

Regards

Jim

Jim,

according to server info from the admin area:

Quote
cURL support enabled
cURL Information 7.22.0

I had a support ticket with my host and then found the fix. it worked until my host made some changes and now broken again. I have another ticket to them to undo whatever they did that broke it.

Quote
United Parcel Service United Parcel Service
This module supports only xpci version 1.0001 of the UPS Rates Interface. Please contact the webmaster for additional assistance.

 

Edited by Gino D
Link to comment
Share on other sites

If the extension is really installed then it should work without using exec. Maybe you can get your host to explain what they did to cause it to mess up.

Regards

Jim

See my profile for a list of my addons and ways to get support.

Link to comment
Share on other sites

here is the reply to the question of what was changed:

Quote

Hello, 

My apologies for any inconvenience that you might have experienced regarding your website service interruption. We have not made any changes to your website or account after this support thread was placed. It seems to be a short-lived issue which you were experiencing with your website. Also, we provide CURL version 7.22 on our servers. We might upgrade the CURL version in near future. 

Sincerely, 

Ashish K 
Technical Specialist

what would cause it to not work, then I change the "0" to "1" and it worked, then stop working, then working fine now. they claim to have made no changes, yet it stopped working after I opened a support ticket, then after updating the ticket to explain I had it working, please change it back, it starts working again. the only change I have made since installing the add on was 0 to 1. I dont feel they are being truthful with me.

1 broken since install

2 I complained to host

3 I made a change-works

4 10 mins later-broken

5 I complained again

6 20 mins later it's working again

 

Link to comment
Share on other sites

  • 3 weeks later...

I installed this the other day and I am having the same problem mentioned several posts ago. When I go to install it in the admin>modules>shipping, it shows there is 1 to install but then when I click Install Module, it isn't there. If I uninstall Flat Rate, Flat Rate appears but I cannot reinstall unless I delete the upsxml.php file in includes/modules/shipping. When I delete that file off the server and refresh the Install Module page, the Flat Rate module appears normal and can be reinstalled. The UPS XML one never appears. According to a previous post, it was said there is a problem with the upsxml.php file. I have not done anything to the file so I don't know what is wrong with it. I receive no error messages. I've included the upsxml.php file below.

The install was normal except I had different code on the catalog/admin/modules.php above where it had me put in that code.

It says after adding it should look like this:

if (tep_not_null($action)) {
    switch ($action) {
      case 'save':
        reset($HTTP_POST_VARS['configuration']);
        while (list($key, $value) = each($HTTP_POST_VARS['configuration'])) {
          if (is_array($value) ) {
            $value = implode( ", ", $value);
		        $value = preg_replace ("/, --none--/", "", $value);
		      }
          tep_db_query("update " . TABLE_CONFIGURATION . " set configuration_value = '" . $value . "' where configuration_key = '" . $key . "'");
        }
        tep_redirect(tep_href_link(FILENAME_MODULES, 'set=' . $set . '&module=' . $HTTP_GET_VARS['module']));
        break;
      case 'install':

But mine is this:

if (tep_not_null($action)) {
    switch ($action) {
      case 'save':
        reset($_POST['configuration']);
        while (list($key, $value) = each($_POST['configuration'])) {
	    if (is_array($value) ) {
            $value = implode( ", ", $value);
		        $value = preg_replace ("/, --none--/", "", $value);
		      }
          tep_db_query("update " . TABLE_CONFIGURATION . " set configuration_value = '" . $value . "' where configuration_key = '" . $key . "'");
        }
        tep_redirect(tep_href_link('modules.php', 'set=' . $set . '&module=' . $_GET['module']));
        break;
      case 'install':

Only thing I see different is $_Post instead of $HTTP_POST_VARS and tep_href_link('modules.php' instead of tep_href_link(FILENAME_MODULES

osCommerce Online Merchant v2.3.4.1
PHP Version 5.3.29

I'm at a loss and need help. Any help is greatly appreciated.

upsxml.php

Link to comment
Share on other sites

  • 8 months later...

I just installed this fantastic module and have it working.  The only thing I need to do due to the type of shoppers is to disable the part where it verifies the address.  In other words, unfortunately for me, I have customers that will write:
1123 Main Street... but in reality they live on 123 Main Street.  I know you would think a logical person would just correct it and move on -- however, that isn't the way it goes on this site (long story).  They simply will not see a ship method that they're willing to use and move on to the next site :( Bad.

We call them and hand-hold them, etc. and get it taken care of, and we get the sale... so it all works out.

So... with that explanation into the nutty shoppers that I cater to... how can we turn off the address verification?

Many thanks,
Pete

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
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
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...