Previous | Next Main Index:   Frames | No Frames
Document:   Frames | No Frames
 

Subtotal Range Shipping

 
Subtotal Range Shipping costs are based on the order's subtotal.
 
%SHIPPING is a hash of arrays in WebStore's setup file, /Web_store/Databases/outlet.setup. listing all shipping variables.
 
%SHIPPING arrays in this file are configured for Subtotal Range Shipping.
Example:  $SHIPPING{1}[2]

 {1}  An array's KEY value. KEY values will be referenced by their
      numeric value in the explanations below (0, 1, 2, etc.).

 [2]  An array's element reference. Element numeric values will
      be spelled in the explanations below (zero, one, two, etc.)

      Specific arrays will be referenced as $SHIPPING{1}.

      A specific element within a specific array will be referenced
      as $SHIPPING{1}[2].
Arrays 1, 2, and 10 must exist in %SHIPPING. If any of these arrays are not present in %SHIPPING or the value of their KEY (1, 2, 10) is altered, shipping is disabled in WebStore.
 
Numeric array KEYS allow the Webstore script to sort the shipping methods in ascending order for printing to the client's web browser.
 
Arrays 0 and 3 - 9 are reserved and can not be used.
 
%SHIPPING = (

	# Determines type of shipping
	# Database Field, Handling, Free Shipping
	'1' => ['',   '',   ''],


	# Domestic Shipping
	'2' => ['319',  '10','11','12','13'],


	# Universal Subtotal Ranges
	'3' => [                 #  Order Subtotal        Shipping Charged
	        '100.00:6.95',   #    $0.01 to $100.00     $6.95
	        '150.00:9.95',   #  $100.01 to $150.00     $9.95
	        '200.00:12.95',  #  $150.01 to $200.00    $12.95
	        '300.00:15.95',  #  $200.01 to $300.00    $15.95
	        '300.01:18.95',  #  $300.01 & up          $18.95
	       ],


	# Shipping Methods
	# 10  UPS Ground or Priority Mail:   $3.95 plus  3% of order's subtotal
	# 11  2nd Day Air:                  $12.00 plus  4% of order's subtotal
	# 12  Standard Next Day Air:        $18.00 plus  5% of order's subtotal
	# 13  Alaska & Hawaii:              $12.00 plus  4% of order's subtotal
	# 14  Canadian Orders:              $10.00 plus 17% of order's subtotal
	# 15  International Orders:         $20.00 plus  8% of order's subtotal

	'10' => ['UPS Ground or Priority Mail', '3.95',   '.03'],
	'11' => ['2nd Day Air',                 '12.00',  '.04'],
	'12' => ['Standard Next Day Air',       '18.00',  '.05'],
	# State Specific Shipping Method
	'13' => ['Alaska & Hawaii',             '12.00',  '.04',  '11:21'],
	# Country Specific Shipping Method
	'14' => ['Canadian Orders',             '10.00',  '.17',  '132'],
	'15' => ['International Orders',        '20.00',  '.08'],

); # DO NOT REMOVE - terminates %SHIPPING
 
 
Index
 
Array 1 - $SHIPPING{1}
$SHIPPING{1} must exist in %SHIPPING. If $SHIPPING{1} is removed or the numeric value of it's KEY (1) is altered, shipping is disabled in WebStore.
 
$SHIPPING{1} consists of the following elements:

 KEY     zero  one     two
 '1' => ['',   '3.50', '150.00'],
zero    Database Shipping Field
Element zero is not used for Subtotal Range Shipping and must be set to ''.
 
one    Handling Charge
Element one is the labor charge for packaging an order for shipment.
Setting element one = '' disables the addition of a handling charge.
Do not include a dollar sign or commas in element one. Element one is a fixed decimal number.
 
two    Free Shipping
When the value of an order's subtotal is greater than the value listed in element two, no shipping or handling is charged for the order. The shipping drop down select element is not printed to the client's web browser.
Setting element two = '' disables free shipping checks, all orders pay shipping.
Do not include a dollar sign or commas in element two. Element two is a fixed decimal number.
 
 
%SHIPPING
 
Array 2 - $SHIPPING{2} - Domestic Shipping
$SHIPPING{2} must exist in %SHIPPING. If $SHIPPING{2} is removed or the numeric value of it's KEY (2) is altered, shipping is disabled in WebStore.
 
$SHIPPING{2} consists of the following elements:

 KEY     zero    one   two   three four
 '2' => ['319',  '10', '11', '12', '13'],
zero    Country Code
  Your 3 digit country code from %countries in outlet.state_country.setup.
 
one, two, three, etc.     Domestic Shipping Method KEYS
    Elements one, two, three, etc. is a listing off all domestic (your country's) shipping method KEYS in %SHIPPING.
List as many domestic shipping methods as you require.
 
Your 3 digit country code in element zero and the domestic shipping methods listed in elements one, two, three, etc. are used to determine if the client has chosen a shipping method which applies to their country of residence.
 
 
%SHIPPING
 
Array 3 - $SHIPPING{3} - Universal Subtotal Ranges
$SHIPPING{3} is optional. If you do not use Universal Subtotal Ranges, $SHIPPING{3} may be deleted.
 
$SHIPPING{3} example:

 '3' => [                 #  Order Subtotal        Shipping Charged
         '100.00:6.95',   #    $0.01 to $100.00     $6.95
         '150.00:9.95',   #  $100.01 to $150.00     $9.95
         '200.00:12.95',  #  $150.01 to $200.00    $12.95
         '300.00:15.95',  #  $200.01 to $300.00    $15.95
         '500.00:20.00',  #  $300.01 to $500.00    $20.00
         '750.00:30.00',  #  $500.01 to $750.00    $30.00
         '750.01:45.00',  #  $750.01 & up          $45.00
        ],
If the client-selected shipping method contains subtotal ranges in element one, the shipping method's range values are used in place of the universal ranges.
 
Each element of $SHIPPING{3} is colon delimited.
 
Order subtotal values are left of the colon in each element and the corresponding base shipping cost is right of the colon in each element.
 
The subtotal values must be listed in ascending order.
 
For example, if an order's subtotal equals $32.95 (less than $100.00), the order's base shipping cost is $6.95.
 
 
The base or universal shipping charge for an order are first calculated using the values listed in $SHIPPING{3}.
 
The values placed in this array should equal the values of your least expensive shipping method, usually a ground shipping method within the borders of your country.
 
After the base shipping value is determined, WebStore checks the contents of elements one and two of the client-selected shipping method for additional manipulations of the base shipping charges.
 
When a dollar value is present in element one of the client-selected shipping method and no value is present in element two, element one's value is added to the base shipping charge to determine total shipping charges.
 
When a value is present in element two of the client-selected shipping method, the base shipping charge is discarded. Shipping charges are calculated by multiplying the order's subtotal by the percentage value found in element two. If a dollar value is present in element one, it is added to the product to determine total shipping costs.
 
If the charges for your shipping methods vary to the point that you can not use base or universal shipping values, delete $SHIPPING{3}. Subtotal ranges or a dollar value may be placed in element one of each shipping method or a percentage value must be placed in element two of each shipping method. If elements one and two of a shipping method are set to '' and $SHIPPING{3} does not exist, shipping costs will be set to 0.00.
 
 
%SHIPPING
 
Arrays 10 - XX $SHIPPING{10} - Shipping Methods
$SHIPPING{10} must exist in %SHIPPING. If $SHIPPING{10} is removed or the numeric value of it's KEY (10) is altered, shipping is disabled in WebStore.
 
$SHIPPING{10} is the first shipping method array.
 
The default shipping method used by WebStore is defined in $SHIPPING{10}.
 
$SHIPPING{10} remains the shipping method until the client selects an alternative shipping method.
 
Each shipping method array (10, 11, 12, etc.) consists of a maximum of four elements.
 
$SHIPPING{10} consists of the following elements:

 KEY     zero                           one  two  three
'10' => ['UPS Ground or Priority Mail', '',  '',  ''],
zero    Shipping Label
The shipping label used in the shipping drop down select element on the order form HTML page, confirmation of order HTML page, and e-mail messages.
 
one    Add Value
When element one equals a dollar value, that value is added to the base shipping costs obtained using the universal subtotal range array, $SHIPPING{3}. When $SHIPPING{3} is not defined, element one's value becomes the total shipping cost for the shipping method.
Element one may contain a set of tilde delimited subtotal ranges:
'15' => ['International Orders',
         '100.00:26.95~
          150.00:29.95~
          200.00:32.95~
          500.00:40.00~
          750.00:50.00~
          800.00:65.00',   '', ''],
Subtotal ranges present in a shipping method array take precedence over subtotal ranges in the universal subtotal range array, $SHIPPING{3}.
Do not include dollar signs or commas in element one. Element one is a fixed decimal number.
 
two    Multiply Value
The Multiply Value takes precedence over the universal subtotal range array, $SHIPPING{3}, and any value present in element one of the shipping method.
The order's subtotal is multiplied by the decimal value present in element two to obtain the order's shipping cost. If a dollar value is present in element one, element one's value is added to the shipping cost product, producing the order's shipping subtotal. If ranges are present in element one, they are not used.
Do not include a dollar sign or commas in element two. Element two is a fixed decimal number.
 
three    Country or State(s) Specific Shipping Method

'14' => ['Canadian Orders', '10.00', '.17', '132'],
For country-specific shipping methods, list the country's 3 digit code from %countries in outlet.state_country.setup in element three. Only one country code may be listed in element three for a country-specific shipping method.

'13' => ['Alaska & Hawaii', '12.00', '.04', '11:21'],
For state-specific shipping methods, list state 2 digit codes from %states in outlet.state_country.setup in element three. More than one state code may be listed in element three for a state-specific shipping method. Colon delimit multiple state codes.
 
 
%SHIPPING | Top of Page