Live Rates at Checkout
USPS and FedEx each register as a standard WooCommerce shipping method, so customers see real carrier pricing at checkout instead of a flat estimate.
Enable the carrier
Enter credentials and enable USPS and/or FedEx under their settings tabs first, and set your shipper address - its ZIP code is the origin for every rate.
Open Shipping settings
Go to WooCommerce → Settings → Shipping.
Add the shipping method
Open a shipping zone, click Add shipping method, and select USPS (ShipLabel) and/or FedEx (ShipLabel).
Configure the method
Set the options below for this zone.
Method Settings
| Setting | Default | Description |
|---|---|---|
| Method title | USPS / FedEx | Shown before each service name at checkout, e.g. "FedEx FedEx 2Day" |
| Rate adjustment | No adjustment | Add a flat amount ($) or a percentage (%) to every rate |
| Adjustment amount | 0 | The amount or percentage to add |
| Free shipping over ($) | 0 | When the cart subtotal reaches this amount, every rate from this method becomes free. 0 disables it |
| Show services | USPS: all services. FedEx: Ground, Home Delivery, 2Day, Priority Overnight | Which services customers can choose |
How Rates Are Calculated
- Weight - the total weight of the products in the cart, converted from your store's weight unit. Products without a weight count as zero, and the minimum is 1 oz.
- Box size - a standard 12 × 10 × 6 in box. Product dimensions are not used at checkout.
- Destination - the customer's postcode (and, for FedEx, country). No rates are shown until the customer has entered a postcode.
Set a weight on every physical product - a cart with no product weights is quoted as a 1 oz parcel, which undercharges shipping.
USPS
USPS rates are for US destinations. Checkout currently quotes one USPS service: the Default service from the USPS settings tab. The Show services list decides whether that service is offered.
FedEx
FedEx returns every service available for the destination, and ShipLabel shows the ones you ticked in Show services - including international services for addresses outside the US.
FedEx prices Ground for business addresses and Home Delivery for residential ones, and checkout can't tell them apart. If Home Delivery is ticked, ShipLabel requests residential rates, so customers see Home Delivery (and residential prices for express services) instead of Ground. Untick Home Delivery if you mostly ship to businesses.
Rate Caching
Rates are cached for 30 minutes per origin ZIP, destination and cart weight (for FedEx, also per country and the residential setting), so the carrier API isn't called on every checkout page load. Failed rate requests are not cached.