Class: ActiveMerchant::Shipping::CanadaPost
- Defined in:
- lib/active_shipping/shipping/carriers/canada_post.rb
Defined Under Namespace
Classes: Box, CanadaPostRateResponse, PackedItem, PostalOutlet
Constant Summary collapse
- DEFAULT_TURN_AROUND_TIME =
24
- URL =
"http://sellonline.canadapost.ca:30000"
- DOCTYPE =
'<!DOCTYPE eparcel SYSTEM "http://sellonline.canadapost.ca/DevelopersResources/protocolV3/eParcel.dtd">'
- RESPONSE_CODES =
{ '1' => "All calculation was done", '2' => "Default shipping rates are returned due to a problem during the processing of the request.", '-2' => "Missing argument when calling module", '-5' => "No Item to ship", '-6' => "Illegal Item weight", '-7' => "Illegal item dimension", '-12' => "Can't open IM config file", '-13' => "Can't create log files", '-15' => "Invalid config file format", '-102' => "Invalid socket connection", '-106' => "Can't connect to server", '-1000' => "Unknow request type sent by client", '-1002' => "MAS Timed out", '-1004' => "Socket communication break", '-1005' => "Did not receive required data on socket.", '-2000' => "Unable to estabish socket connection with RSSS", '-2001' => "Merchant Id not found on server", '-2002' => "One or more parameter was not sent by the IM to the MAS", '-2003' => "Did not receive required data on socket.", '-2004' => "The request contains to many items to process it.", '-2005' => "The request received on socket is larger than the maximum allowed.", '-3000' => "Origin Postal Code is illegal", '-3001' => "Destination Postal Code/State Name/ Country is illegal", '-3002' => "Parcel too large to be shipped with CPC", '-3003' => "Parcel too small to be shipped with CPC", '-3004' => "Parcel too heavy to be shipped with CPC", '-3005' => "Internal error code returned by the rating DLL", '-3006' => "The pick up time format is invalid or not defined.", '-4000' => "Volumetric internal error", '-4001' => "Volumetric time out calculation error.", '-4002' => "No bins provided to the volumetric engine.", '-4003' => "No items provided to the volumetric engine.", '-4004' => "Item is too large to be packed", '-4005' => "Number of item more than maximum allowed", '-5000' => "XML Parsing error", '-5001' => "XML Tag not found", '-5002' => "Node Value Number format error", '-5003' => "Node value is empty", '-5004' => "Unable to create/parse XML Document", '-6000' => "Unable to open the database", '-6001' => "Unable to read from the database", '-6002' => "Unable to write to the database", '-50000' => "Internal problem - Please contact Sell Online Help Desk" }
- NON_ISO_COUNTRY_NAMES =
{ 'Russian Federation' => 'Russia' }
- @@name =
"Canada Post"
- @@name_french =
"Postes Canada"
Instance Attribute Summary
Attributes inherited from Carrier
Class Method Summary collapse
Instance Method Summary collapse
- #find_rates(origin, destination, line_items = [], options = {}) ⇒ Object
- #maximum_weight ⇒ Object
- #requirements ⇒ Object
Methods inherited from Carrier
#initialize, #valid_credentials?
Methods included from PostsData
included, #raw_ssl_request, #ssl_get, #ssl_post, #ssl_request
Methods included from RequiresParameters
Constructor Details
This class inherits a constructor from ActiveMerchant::Shipping::Carrier
Class Method Details
.default_location ⇒ Object
100 101 102 103 104 105 106 107 108 |
# File 'lib/active_shipping/shipping/carriers/canada_post.rb', line 100 def self.default_location { :country => 'CA', :province => 'ON', :city => 'Ottawa', :address1 => '61A York St', :postal_code => 'K1N5T2' } end |
Instance Method Details
#find_rates(origin, destination, line_items = [], options = {}) ⇒ Object
91 92 93 94 |
# File 'lib/active_shipping/shipping/carriers/canada_post.rb', line 91 def find_rates(origin, destination, line_items = [], = {}) rate_request = build_rate_request(origin, destination, line_items, ) commit(rate_request, origin, destination, ) end |
#maximum_weight ⇒ Object
96 97 98 |
# File 'lib/active_shipping/shipping/carriers/canada_post.rb', line 96 def maximum_weight Mass.new(30, :kilograms) end |
#requirements ⇒ Object
87 88 89 |
# File 'lib/active_shipping/shipping/carriers/canada_post.rb', line 87 def requirements [:login] end |