Magento Free Shipping for APO/FPO

Being previous military myself I can really respect when a company chooses to give free shipping (through a coupon or automatically) to our over-seas soldiers.  Maybe you or one of your clients has a Magento store and wants to show their patriotic support by adding free shipping for APO addresses. It only takes a few moments to set up and while the troops don’t always know about that free shipping you bet that the families supporting and loving them certainly do appreciate it!

The Research

There are a number of United States overseas military addresses and while they are not all technically APO (Army Post Office) this is typically the term that is used when shipping to deployed soliders. The other option is FPO (Fleet Post Office) for the U.S. Navy and Marines Corps. The zip code acronyms for the APO/FPO addresses are AE – Armed Forces Middle East/Africa, AA – Armed Forces Americas, and AP – Armed Forces Pacific.

You can view a full list of zip code prefixes here:Wikipedia Zip Code List. There are 15 different zip code prefixes that we are concerned with and you can find them easily as they are listed as ‘military’ (Control + F the term ‘military’ to easily find them).

The How To

Log in to your Magento admin panel and first make sure that you have Free Shipping enabled or that you have another shipping carrier that supports APO/FPO shipping enabled and has a free shipping option selected. Many stores use the Free Shipping method with a dollar limit appropriate for their product prices. Note: Be careful to not just enable Free Shipping without a limit unless you want to give everyone free shipping on all orders.

Now its time to input the logic that will tell Magento to give free shipping to these select orders. In the Magento admin go to Promotions -> Shopping Cart Price Rules and click the Add New Rule button. On the first page called Rule Information you’ll want to fill in the required fields making sure to set Status to Active. If you want your users to have to use a coupon then set Coupon to Specific Coupon if not then leave Coupon set to No Coupon.

Next, is the Conditions tab. Click on that and build out the following logic:

Magento Free Shipping for APO/FPO


If ANY  of these conditions are TRUE :
  If ALL  of these conditions are TRUE :
    Shipping Postcode  equals or greater than  09000
    Shipping Postcode  less than  09900
  If ALL  of these conditions are TRUE :
    Shipping Postcode  equals or greater than  34000
    Shipping Postcode  less than  34100
  If ALL  of these conditions are TRUE :
    Shipping Postcode  equals or greater than  96200
    Shipping Postcode  less than  96700

What this is saying to Magento is “if any of these 3 scenarios are true then take a specific action.”
Scenario #1 will cover our zip codes for Bases in Germany, Iraq, Afghanistan, United Kingdom, Naval/Marine, Spain, Italy, Europe, Greenland, Canada, Africa/Middle East (see the zip code Wikipedia link already mentioned). As you can see this will be our largest scenario. Starting with Germany using 090** through Africa/Middle East using 098**.
Scenario #1 is a zip code between 09000 and 09899″

Scenario #2 will cover our zip codes for Bases in Americas.
Scenario #2 is a zip code between 34000 and 34099″

Scenario #3 will cover our zip codes for Bases in Korea, Japan, Philippines, Pacific bases, and Naval/Marine.
Scenario #1 is a zip code between 96200 and 96699″

Time for that specific action mentioned earlier. Go to the Actions tab and make sure that Free Shipping is set to For Shipment with Matching Items. That’s it! Click the Save button.