Jump to content
  • 0

Here is one way to set up USPS Priority mail shipping rates...


Go to the USPS zone chart generator: http://postcalc.usps.gov/Zonecharts/ Type in the first three of the zip code of your shipping dept. For reference, print the resulting chart. You will see that the USPS has broken down the US into 8 zones.

The shipping charges will be applied by state, instead of zones. The issue with this is it is not exact as compared to the USPS way of charging by zip code. As you can see in the chart above, some states may have different zones. So, what to do? It is possible to quickly assign a zone to a state, but you may be undercharging some people who may be in a higher-priced zone, so you may want to decide to pick the highest zone in a state and charge that to the entire state.

Of course, you may wish to explain this shipping policy in some way like, "Rates are based on the USPS zone chart but highest zone rate in a state is applied to the entire state." Or not. It is your choice how much to charge your customers for shipping, but stating a policy should make your customers feel more confident to shop with you.

The procedure:

(These steps need to be done in the following order, except step #6, which can be done at any point before, or after.)

1. Create the zones (Zone 1 ~ 8). [Shipping >> Zones] Click "Add New" at the top of the page. Make sure the Enabled button is selected before saving. It usually is. Save.

2. Set each state's zone number. [Shipping >> States >> Click on the name of a state to open the edit page for that state] Manually choose the zone for each using the Zone drop-down. Save.

3. Create Carrier service. [Shipping >> Carriers] Click "Add New" at top of page. Name your Carrier service something like USPS Priority Mail. Fill in or check all fields as needed and check off all the zones that you created in step 1. Note that when you have other "carriers" such as free pick-up, etc., they will also need to have all of the zones checked off, as well. Otherwise, these additional options will not show up in the checkout. Save.

4. Create weight ranges. [Shipping >> Weight Ranges] Click "Add New" at top of page. Priority mail is based on one-pound increments; however, here in Presta Shop, use ounces: 1-16, 17-32, 33-48, etc. Save.

5. Create range fees. Go back to the main Shipping page by clicking on the Shipping tab. Check the button in the Handling Box that says, “Billing: According to total weight.” Choose the correct carrier in the drop-down (like USPS Priority Mail). After page reloads, scroll down to find the newly populated pricing fields and enter the fees. Save. *See image, below.

Note: If you forget to check off the button "Billing: According to total Weight", the weight ranges you create for carriers will not show up at the bottom of the page in the Fees box after you select the carrier.

See the pricing chart here: http://www.usps.com/prices/priority-mail-prices.htm. **See note below about pricing.

6. Enter weight into product information pages and combination (attribute) pages under, " impact on weight fields," if any. These can be entered at any time.
Note: be sure to save all steps if a save button is presented, naturally.

Remember, when you try testing it by creating additional shipping address(es) under your account, note that the shipping is based on the state name, not zip code.

**Once you see the USPS Priority Mail fees chart, you can see how the pricing stacks up.

For states with more than one zone read this example for California:

California has zones 1-4 (starting point is also California). The zones will climb the more east you go...of course.

The actual USPS rate is $4.95 for up to 1-lb for all 8 zones. That's easy, but, the 2-lb rate for zones 1-4, I have set the rate of $5.75 since these zones cover all of California and the price for zone 4 is $5.75. So, the maximum for California at 2-lb. became the base price for the entire state (all 4 zones) since it is not possible to identify a customer by zip. This method will need to be used for all rates in this state. You may choose to go with a median price if you think it is unfair to charge the local people the same rate as shipping hundreds of miles away. Remember, some customers may actually know or check the real rates. How you charge is up to you, but until a real USPS module is created, this is the best I can come up with using the system as it is.

I hope this works for you...


Share this post

Link to post
Share on other sites

11 answers to this question

Recommended Posts

  • 0
hj    0

This is truly the best work-around I have seen for shipping in USA. I will give it a shot and add my comments.

Thank you very much for sharing...


Share this post

Link to post
Share on other sites
  • 0

@ rbarrick:

According to the USPS National Zone Charts Technical Matrix Guide (http://ribbs.usps.gov/files/Zone_Charts/ZCTECHNICAL_GUIDE.PDF), zones are determined by how far away the destination is from the starting point according to the chart below.

Local Zone
The local zone applies to mail deposited at any post office for delivery to any address within the delivery area of that post office. Check with your local post office for specific details regarding the ZIP Codes that qualify for local zone in your area. The National Zone Charts Matrix does not contain local zone information since local zones are at the 5-digit ZIP Code level.

Non-Local Zone
Non-local zones are defined numerically as follows.
Zone Distance
1 Non-local zones within a 50 mile radius of the point of origination
2 50 to 150 mile radius
3 150 to 300 mile radius
4 300 to 600 mile radius
5 600 to 1000 mile radius
6 1000 to 1400 mile radius
7 1400 to 1800 mile radius
8 1800 miles and over

This is the basis for the zone determination; however, I myself may just get a map, find a city in the furthest side/corner in each state from your location. Then, look up the zip code in the USPS zip code lookup tool: http://zip4.usps.com/zip4/citytown.jsp. Then compare the first three numbers of the zip code to this chart: http://postcalc.usps.gov/Zonecharts/. This will determine the zone for each state.

This is one arbitrary way of deciding the zones, but this way would make sure that each state is represented by the furthest zone possible for that state; then you won't end up getting over-charged by USPS for sending shipments to any location within a state. For a more moderate evening-out of the charges, you could go for cities at the center of each state and hope that you get enough orders so that the customers who pay a little more (being closer to you) offset the loss of those who are getting under-charged (those furthest from you). This method may help your shipping fees to seem not so suspiciously high. I suppose it would depend on your volume of sales and from where. It's your choice to make.

See this link for an opinion about shipping rates: Are Your Fees Driving Away Customers. I found this useful.

Hope this helps.

Share this post

Link to post
Share on other sites
  • 0


Be sure to check the button at the top of the main shipping page in the Handling Box that says, "Billing: According to total weight." If you forget this, the weight ranges you create for carriers will not show up at the bottom of the page in the Fees box after you select the carrier.

Sorry for this omission. This should be one of the first steps.

This information was inserted into the first post under step #5, so the first post is now complete.

Share this post

Link to post
Share on other sites
  • 0

I am working my way thru this, and on step 5 where it says

"5. Enter weight pricing fees in the main Shipping page, in the box at bottom, “Fees by carrier, geographical zones and ranges.” Choose the correct carrier, USPS Priority Mail, in the drop-down. After page reloads, scroll down to find the newly populated pricing fields and enter the fees. Save. "

I can get the page to display the 8 zones at the bottom of the main shipping page, but I see no way to enter the fees. What am I doing wrong?

Share this post

Link to post
Share on other sites
  • 0

Well, when in the "Shipping" section, once I pick "USPS Priority Mail", I get a table with zones down the left hand side and weight ranges across the top. Each cell in the table you put a price in. If you are not getting this then I am guessing either the "Weight Ranges" (subsection of "Shipping") is not set up, or else the zones are not created. If you see the zones but not the place to enter them then perhaps double-check that you have the weight ranges set up? Also note the addendum to the procedure from deborahjb that is a couple posts up from this one.

Share this post

Link to post
Share on other sites
  • 0

I have been following this thread and have come to the point of adding the price of shipping into the fees table. My fees table looks just like Deborahjb. I have done everything in her lesson exactly as posted.

My issue is the fees table wont take any of the shipping prices except 1. That would be in first column USPS Priority Zone 1 - 0oz to 16oz. Which I added $4.85 the rest of the fee table has nothing but 0.00 in every box and wont let me change them to the correct price.

Any idea on what I am doing wrong? Here is a snap...

Thanks for your time in advance Billy


Share this post

Link to post
Share on other sites
  • 0

Well from reading around the forums and the wiki. I have come to the conclusion that all my products need weight before I can post all the shipping charges in the fee table.

Minor mistake but now I half to edit 300 products one at a time. At least i hope this works... Otherwise i am stuck.

Share this post

Link to post
Share on other sites
  • 0

I followed the States guideline above but I still got the dreaded "No Carrier Available To Deliver to that address".


My "mistake" was I reused the included USPS profiles. Although I spent hours setting up weight ranges and zones for my USPS carriers since I edited the existing profiles THEY WON"T WORK.

I noticed in small grey print on the USPS carrier screens the words:

"- This carrier is bound to this module => uspscarrier

- The shipping costs are calculated outside of your shop

- This carrier uses PrestaShop range to calculate shipping costs"


Well, I cannot find any such module but I can tell you all the time you spent setting zone prices by weight for them was a waste.


You need to DELETE the existing USPS carrier profiles and make new ones with slightly altered names and CREATE them as a brand new to Presta carrier profile - then populate the weight ranges and then the zone prices.


I lost a ton of time but doing the above made all my shipping charges work now.

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now