CFWebstore® can calculate both domestic and international U.S.P.S. rates using their rates API. You can also use the address verification and tracking tools with your store. To use the USPS shipping methods, you first need to sign up to use their API. Just go to http://www.usps.com/webtools/, and register for the USPS Web Tools.
You will initially be assigned to their test server. In order to run test transactions, you have to send a very specific request to the USPS server, which can be a bit tough to do with CFWebstore®. An example of a test transaction is Express mail from a merchant zip code of 20770 to a destination zip of 20852, package weight of 10 pounds. Since CFWebstore®.has already been tested for you, it’s usually best to just request they move you immediately to the production server.
U.S.P.S. Settings
After completing the registration and receiving your account information, configure the USPS Settings for CFWebstore®.
Account User ID – The account name assigned to you by USPS
Shipper’s Zip/Postal Code – The default postal code packages are being shipped from.
Maximum Package Weight – The maximum weight to include in a single package for shipping. Once an order exceeds this weight, it will be split into multiple packages (of equal weight). If you are using drop-shippers, the packages will be split for each drop-shipper separately.
Use Address Verification – This will run an address verification test on the shipping address of the customer during checkout to see if it is valid. To use USPS Address Verification you will need to complete an additional registration at https://www.usps.com/business/webtools-address-information.htm.
Log Transactions – This will log all API transactions to and from the USPS server to a file in the logs directory. Since this file can get really large with normal store use, this setting is typically left off unless you need to debug a shipping issue with a live store.
Debug – If this setting is turned on, the API transactions to and from the USPS server as well as some internal shipping structures will be written out to the page during checkout. This is generally only turned on for development purposes and shouldn’t be used with a live store.
Click Save to save your settings and Cancel to return to the main Shipping Settings screen.
U.S.P.S. Shipping Methods
This section allows you to configure which shipping methods will be available to your users. From the main shipping methods screen, a list of available methods will be displayed, for each you can select if this is a method you want to offer to customers and you can also enter the sort order to determine what order to display them in. Be sure that you have at least one shipping method turned on or your store will not be able to calculate any rates. If you ship internationally, be sure to have both a domestic method and an international method on as USPS uses different rates for each. Also note that not all methods are available to all addresses. You can use the logging feature to see exactly what methods are being returned for a particular address.
After entering your selections for methods to use and the sort order (if any) click Update Used to save your changes.
Click Edit to modify an existing shipping method or Add Method to add a new method to the store. The following fields are available for shipping methods:
Type – Select whether this is a domestic or international shipping method
Description – The name of the shipping type that you wish to use in your store.
Code – The API code for the shipping method. This is the name of the shipping as returned by the USPS API.
Priority – The sort order for the shipping method. This determines the order the shipping types will be displayed in the checkout section.
Used? – Toggles the shipping method on and off in the store.
Click Save to add or update the shipping method and Delete if you wish to remove it.
IMPORTANT NOTE ON U.S.P.S. SHIPPING RATES
The US Postal service rates tend to change every year and the “code” may have to be updated to match any changes to that service rate name. Since that API does not return a unique code for each rate, in order to selectively turn them on and off, the software has to match on the name so if it changes, that will break the rate and it won’t be shown. You can use the debug and logging features to see all the rate names being returned and check for this possibility.