Kryptronic Software Support Forum

You are viewing this forum as a guest. Login to an existing account, or create a new account, to reply to topics and to create new topics.

#1 10-23-2015 08:22:23

chrisrolling
Member
Registered: 06-11-2004
Posts: 39

Puerto Rico

Hi- currently Puerto Rico comes up as an international shipping charge.  How can I make Puerto Rico the same as domestic U.S. shipping?  Somewhere I can toggle something or do I need to add some code?

Offline

 

#2 10-23-2015 08:53:43

nigel
Member
From: Peterborough, UK
Registered: 04-27-2008
Posts: 418
Website

Re: Puerto Rico

System Dashboard > System > Locations > Countries

Offline

 

#3 10-23-2015 08:56:04

chrisrolling
Member
Registered: 06-11-2004
Posts: 39

Re: Puerto Rico

Got it, thank you Nigel.

Offline

 

#4 10-23-2015 09:27:19

chrisrolling
Member
Registered: 06-11-2004
Posts: 39

Re: Puerto Rico

So I've changed the setting there to reflect US shipping (Shipping Zone > Parcelforce - United States, Canada).  Do I need to change something somewhere else?

Offline

 

#5 10-23-2015 09:55:51

nigel
Member
From: Peterborough, UK
Registered: 04-27-2008
Posts: 418
Website

Re: Puerto Rico

the best way to check if the changes have worked is to add an item to your shopping cart then use the shipping estimator.

Offline

 

#6 10-23-2015 10:06:14

chrisrolling
Member
Registered: 06-11-2004
Posts: 39

Re: Puerto Rico

Yes, that is what I did, and it still shows up with my International shipping charge.

Offline

 

#7 10-23-2015 10:08:45

nigel
Member
From: Peterborough, UK
Registered: 04-27-2008
Posts: 418
Website

Re: Puerto Rico

make sure you clear the existing data, try selecting a different country and submitting it, then select Puerto Rico again and submit it.

Offline

 

#8 10-26-2015 07:38:54

webmaster
Administrator
From: York, PA
Registered: 04-20-2001
Posts: 19861
Website

Re: Puerto Rico

I think Chris is asking why Puerto Rico is showing up with international rates and not domestic rates.  If you're not using Zone Based shipping, then setting zone based shipping settings won't do anything important for you.  The first question I have, Chris, is what shipping method are you using?


Nick Hendler

Offline

 

#9 11-09-2015 08:25:47

chrisrolling
Member
Registered: 06-11-2004
Posts: 39

Re: Puerto Rico

We typically use a Custom Shipping Method for the majority (99%) and Product Based Shipping for a couple of items.

Offline

 

#10 11-09-2015 08:26:49

chrisrolling
Member
Registered: 06-11-2004
Posts: 39

Re: Puerto Rico

It's a User Defined Calculation.  Here is the string: 

<?php

// +--
// | All custom shipping scripts work in the same way.  A global
// | variable named 'ecom.customship' contains the following PHP
// | array.  Array keys with value info:
// |
// | weight        => Total weight of items being shipped.
// | total         => Subtotal of items being shipped.
// | quantity      => Quantity of items being shipped.
// | stateprov     => Ship to state/province.
// | country       => Ship to country.
// | postalcode    => Ship to postal code.
// | rescom        => Ship to residential/commercial status.
// | shipstateprov => Ship origin state/province.
// | shipcountry   => Ship origin country.
// | shipzip       => Ship origin postal code.
// | packages      => An array containing all packages with
// |                  each package defined in it's own array
// |                  with keys: length, width, height, weight.
// | delinfo       => Delivery information array.
// | delitems      => An array containing all items with
// |                  each item id as a key and the item quantity
// |                  as a value.
// |
// | This script must set a global variable named
// | 'ecom.customship_response' which is an array in the
// | following format:
// |
// | method name => amount
// |
// | NOTE: Do not print anything within custom shipping
// | scripts.  They are designed only to return names and
// | prices for custom shipping methods.
// +--

$info = $this->globals('ecom.customship');

// +--
// | Set the shipping method name and prices for various quantities.
// +--

$methodname = 'Unionized Carrier';
$pricefirst = 4;
$pricenext  = 1;

if ($info['country'] != 'United States') {

     $methodname = 'Unionized Carrier - International';
     $pricefirst = 23;
     $pricenext  = 2;

} // End of if statement.

// +--
// | Calculate the cost.
// +--

$methodcost = (($info['quantity'] - 1) * $pricenext) + $pricefirst;

// +--
// | Return the result.
// +--

$custom = array($methodname => $methodcost);

$this->globals('ecom.customship_response',$custom);

?>

Offline

 

#11 11-10-2015 06:55:32

webmaster
Administrator
From: York, PA
Registered: 04-20-2001
Posts: 19861
Website

Re: Puerto Rico

A custom script is definitely the best way to handle something like this because the realtime carriers all treat Puerto Rico as it's own country.


Nick Hendler

Offline

 

#12 11-10-2015 12:12:38

chrisrolling
Member
Registered: 06-11-2004
Posts: 39

Re: Puerto Rico

Thanks, Nick- I'll be in touch.

Offline

 

Board footer