An easy to use shipping API for Ruby. Shipping is used to calculate shipping costs, track orders and other shipping based processes through major shipping companies such as, UPS and Fedex, etc.
Ruby
Pull request Compare This branch is 2 commits ahead of cardmagic:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib
test
LICENSE
README
Rakefile
install.rb
shipping.gemspec

README

== Welcome to Shipping

Shipping is a module that connects APIs for various shippers like UPS and FedEx. Shipping currently supports pricing, shipping, labeling and voiding for UPS and FedEx through their XML APIs.

== Download

* gem install shipping
* http://rubyforge.org/projects/shipping
* svn co http://rufy.com/svn/shipping/trunk

=== Usage
There is going to be some data that will persist for all connections. For example, you will not want to repeat the fedex account number every time in your implementation code. To set default values, setup a file called .shipping.yml in the home directory of the user who will be using this library. An example file would be:

    fedex_url: https://gatewaybeta.fedex.com/GatewayDC
    fedex_account: 1234556
    fedex_meter: 387878
    
    ups_url: https://wwwcie.ups.com/ups.app/xml
    ups_license_number: 7B4F74E3075AEEFF
    ups_user: username
    ups_password: password
    ups_shipper_number: 855AA0


You can set as many default values as you would like in this file.

    require 'shipping'
    
    ups = Shipping::UPS.new :zip => 97202, :state => "OR", :sender_zip => 10001, :weight => 2
    ups.price => 5.8
    ups.valid_address? => false
    
    ups.city = "Portland"
    ups.valid_address? => true
    
Alternately, you can instantiate the base class and then see both UPS and FedEx information.

    ship = Shipping::Base.new :zip => 97202, :state => "OR", :sender_zip => 10001, :weight => 2
    ship.ups.price => 5.8
    ship.fedex.price => 5.8
    
    ship.city = "Portland"
    ship.ups.valid_address? => true

== Authors    
* Lucas Carlson  (mailto:lucas@rufy.com)
* Jimmy Baker (mailto:jimmyebaker@gmail.com)
* Noah Zoschke (mailto:noah@bitscribe.net)

This library is released under the terms of the GNU LGPL.