Changes for version 1.55

  • General
    • Rewrite the 'service' parameter/function
      • User can specify full names such as 'Ground Residential' instead of GNDRES or 03.
      • Backwards-compatible
      • Allows easy retrieval of service names, codes, nicknames, etc.
      • Prepares the way for new UPS_Online 'Shop' service.
    • Rewrite the 'results' feature
      • Remove old 'packages' idea.
      • Make room for new UPS_Online 'Shop' service.
      • Not backwards-compatible, but results() was not intended to be public before.
    • Misc code cleanups
    • Remove some old utility functions.
    • [Fixed] Tests tried to load Cache::FileCache, even when the module was not installed. Now it tries to detect the module first.
    • [Fixed] Business::Shipping::RateRequest loaded Cache::FileCache even though it is not needed at that level anymore.
    • [Enh] Tests: check for username/password more consistently.
    • [Enh] Remove dependancy on updated version of Scalar::Util (now older versions will work).
  • UPS_Online
    • [Enh] New 'Shop' service. Retrieve all the rates in one request. Original implementation by Selena Brewington <computers@chrisking.com>, later updated and modified.
      • New tests added to cover the shop feature.
      • Example Usage:
        • my $rr_shop = Business::Shipping->rate_request( service => 'shop', shipper => 'UPS_Online', from_zip => '98682', to_zip => '98270', weight => 5.00, user_id => $ENV{ UPS_USER_ID }, password => $ENV{ UPS_PASSWORD }, access_key => $ENV{ UPS_ACCESS_KEY } );
        • $rr_shop->go() or die $rr_shop->user_error();
        • foreach my $shipper ( @$results ) { print "Shipper: $shipper->{name}\n\n"; foreach my $rate ( @{ $shipper->{ rates } } ) { print " Service: $rate->{name}\n"; print " Charges: $rate->{charges_formatted}\n"; print " Delivery: $rate->{deliv_date_formatted}\n" if $rate->{ deliv_date_formatted }; print "\n"; } }
    • [Enh] C.O.D. (Cash On Delivery) contributed by Selena Brewington <computers@chrisking.com>, with minor modifications.
      • To use, add these parameters to your rate request:
        • cod => 1, # Enable C.O.D. cod_value => 400.00, # C.O.D. value in USA dollars. cod_funds_code => 0, # 0 = All funds allowed,
          • 8 = money order only.
  • UPS_Offline
    • [Enh] New program to update fuel surcharge automatically.
      • Run every first Monday of the month to get the new fuel surcharge from the UPS website.
      • See bin/Business-Shipping-UPS_Offline-update-fuel-surcharge.pl for more information.

Documentation

How to install Business::Shipping

Modules

Rates and tracking for UPS and USPS
Determine class attributes
ClassAttribs helper functions
Configuration functions
Database interface
For backwards compatibility only
Simplified wrapper for Log::Log4perl
Interface between KLogging and Business::Shipping
Abstract class for cost calculation.
Template for new rate requests
A USPS module for Tracking Packages
Miscellaneous functions