Unlike other carriers, the USPS ships to Puerto Rico using domestic rates. But other carriers (like UPS and FedEx) ship to PR using international rates. This can cause display issues on your store and rate discrepancies that need to be explained to your customers.
To make life (or at least business) easier on yourself, you may consider only offering live shipping rates from USPS for Puerto Rico. Here’s how:
Adding Puerto Rico as a U.S. State
Puerto Rico may be a territory of the U.S., but you still have to add it to your store to get domestic live shipping rates for it. 🇺🇸
Go to Settings > Shipping
Under Ship To Location, click Edit Available States/Provinces
At the top of the States/Provinces page, click Add
Select  United States from the Country ID menu
Fill in the State Name with PUERTO RICO (all caps) and the State Code with PR
Your State List should now include an entry for Puerto Rico that looks similar to the one shown directly above.
Applying USPS Shipping Methods
To make sure that your USPS Shipping Methods are available for your customers in Puerto Rico, you only need to make sure that the United States is included in the Qualifying Location of a USPS Shipping Method, as show below:
If the United States is not showing in this field, make sure the checkbox for "Change Ship To locations for this method" is clicked, and then click in the "Include" field. You will see a dropdown list with your available shipping locations. Choose United States from the list and make sure to click the blue "Save" button at the top right of the Shipping Method page. You are now ready to ship to Puerto Rico using this USPS Shipping Method.
Other Shipping Methods
Whether or not you choose to also offer international (non-USPS) shipping methods to the “country” Puerto Rico, you will need to ensure that Puerto Rico is not available for domestic rates with other carriers as a state.
Select an active, non-USPS Shipping Method under Live Rates.
Click the Method name.
Locate the Qualifying Locations section.
Make sure the checkbox for "Change Ship To locations for this method" is clicked
Click in the "Exclude" field. You will see a dropdown list with your available shipping locations. Choose Puerto Rico from the list. You will need to make sure you are choosing the US State Puerto Rico and not the country. (Here is hint, it should appear below Pennsylvania in the list).
Make sure to click the blue "Save" button at the top right of the Shipping Method page.
Testing USPS Shipping Rates
Practice makes perfect. So be sure to first test out your store to make sure it’s ready to provide USPS live shipping rates for order to Puerto Rico.
Navigate to the Test Shipping Rates section at the bottom of the Settings > Shipping page
Fill in the To: fields with test information for Puerto Rico as a state (ex.: Country: "United States," State: "PR," Postal Code: "00901")
Click Run Test
Scroll past the debugging code, back to the bottom of the Shipping page, and click Show/Hide Debugging Information
If you see "Live Rate Returned" for USPS shipping methods, then you’re all set
If you see "Custom / Backup Rate Returned," repeat the steps above to double-check you configured the settings properly (mistakes happen, which is the point of testing).
Shipping Address Format for Puerto Rico
To complicate shipping to PR a little bit more, you need to use a specific address format. Make sure you follow these regulations to avoid additional costs or delayed shipments when fulfilling orders to Puerto Rico.
Guam and other destinations
Using the directions provided for Puerto Rico it should also be possible to add other American territories such as Guam, American Samoa, US Virgin Islands and the Northern Mariana Islands. USPS provides a list of all US territories that are considered US states for shipping purposes, located HERE.