How do USPS Zones work?
When can I send tobacco through the USPS?
What is the difference between USPS Adult Signature and USPS Signature Confirmation?
What happens when the USPS fails to deliver my package?
Can I track USPS First-Class Mail Letters or Flats?
What are the weight and size restrictions for USPS First Class parcels?
Can USPS provide overnight delivery?
Can I advance a ship date for USPS shipments?
Do I have to ship my USPS packages exactly on the ship date?
What is a USPS First-Class Mail Large Envelope or Flat?
Can I predict when my USPS package will be delivered?
How do I use USPS soft pack envelopes with cubic pricing?
How do I get USPS media mail rates and library mail rates on EasyPost?
Can I get a USPS shipping label refund on USPS packages returned to sender?
Is there a tracking status for a returned package that was delivered back to sender?
Can I refund First-Class Mail Letters and Flats through EasyPost?
How do USPS Zones work?
For certain mail classes, the USPS determines pricing by both weight and shipping distance, which they do with Postal Zones. Zones are based on the distance a parcel or a piece of mail travels from point A to point B, and are calculated from the first three digits of your origin and destination zip codes. For some overseas locations all five digits are used. Zone 1 would represent the closest (and therefore cheapest) areas to mail from your zip code, while Zone 9 would represent the farthest (and most expensive) areas.
You can consult USPS rate charts to figure out your shipment's postal zone, but you can also quickly look it up using our Zone Lookup Tool.
When can I send tobacco through the USPS?
You can mail tobacco products with the USPS, but there are some restrictions. According to the USPS website:
"Cigarettes and smokeless tobacco are restricted items and can only be mailed in limited circumstances. Cigars may be mailed domestically. Customers are advised to review the Cigarettes, Cigars, and Tobacco Definitions and Mailability.
Exceptions for Mailing Cigarette & Smokeless Tobacco
Cigarettes and smokeless tobacco are mailable only in the below circumstances:
- Intra-Alaskan and intra-Hawaiian shipments
- Business/regulatory purposes
- Small-quantity “gift” shipments to individuals
- Individual returns of an unacceptable tobacco product to a manufacturer
- Other Shipping & Packaging Requirements
Allowable cigarette or smokeless tobacco shipments must be approved by a Postal employee at a Post Office™. The Postal employee will verify that an individual recipient is of legal age to receive the shipment.
Tobacco Shipments to APO/FPO/DPO
When shipping to APO/FPO/DPO locations in foreign countries, USPS treats the mail as domestic mail, but shipping is still subject to those foreign countries’ prohibitions and restrictions. Customers should be aware that size and weight standards may differ from USPS standards. See International Country Listings to find country-specific prohibitions and restrictions."
Make sure you mark your USPS tobacco shipment with the Shipment option "delivery_confirmation":"ADULT_SIGNATURE_RESTRICTED"
in order to generate an appropriate label.
What is the difference between USPS Adult Signature and USPS Signature Confirmation?
USPS has many options under their Signature Confirmation Services product. The main difference between USPS Adult Signature and USPS Signature for USPS delivery confirmation is the required age of the signee.
Technically, if your toddler wants to scribble stuff on the scanner for your USPS delivery confirmation required package, you can let them! USPS Signature confirmation only requires a signing recipient, regardless of how old they are.
USPS Adult Signature requires the signing recipient to be at least 21 years of age and can provide a government-issued photo ID to verify the signee’s age.
You can also add Restricted Delivery to both of these options if you want the specific person named on the shipping address, or authorized agent for that person, to provide the signature.
When generating a USPS shipping label within EasyPost, there are times when you may require someone to sign for the package. We call this Shipment option USPS delivery confirmation. When using our API, you can pass different parameters for the delivery_confirmation attribute on the Shipment Object.
You can pass delivery_confirmation as a string if you need a signature to confirm the shipment was delivered. Note that some of the below Shipment options may be limited for international packages. You can pass the following Shipment options for USPS delivery_confirmation:
- "ADULT_SIGNATURE"
- "SIGNATURE"
- "NO_SIGNATURE"
- "ADULT_SIGNATURE_RESTRICTED"
- "SIGNATURE_RESTRICTED"
This is a Node.js example of using the delivery confirmation Shipment option:
"options": { "delivery_confirmation": "ADULT_SIGNATURE", }
Examples in other code languages can be found in our API documentation.
What happens when the USPS fails to deliver my package?
There are a few different scenarios that may result in your USPS package being incorrectly delivered, lost, or just sent to the wrong address. Depending on the situation, you have some options to recover the package or obtain the insurance coverage if the USPS package was lost or damaged.
USPS package intercept
Let’s say you generate a USPS shipping label and send out the package, then the recipient contacts you and says they accidentally input the wrong to_address on the shipping label. You realize that once you generate a USPS shipping label within EasyPost, it is considered immutable — meaning you can’t change it within our API.
When this happens, the USPS will generally return the package to the original sender. If the package failed to deliver due to address issues, you can contact USPS directly to see if you can get it redirected to the correct address. This is known as a package intercept. Unfortunately, there is not a way to redirect packages through EasyPost. This is something that we'd like to support at some point in the future. For now, we will refer you to the USPS website link below.
How to intercept a USPS package
According to the USPS website:
"For a fee, USPS Package Intercept® lets the sender or recipient stop delivery or redirect a package, letter, or flat that is not out for delivery or already delivered. Most domestic mailings with a tracking or extra services barcode are eligible for Package Intercept. You can only request a Package Intercept online."
You can find out if your item is eligible for an intercept at the USPS's website.
Can I track my First-Class Mail Letters or Flats?
Previously, the United States Postal Service did not provide a trackable USPS tracking number for USPS First-Class Mail letters or flats (these package types are designated as predefined packages within EasyPost).
EasyPost recently added support for USPS tracking events for First- Class Mail letters and flats. USPS tracking for letters and flats offers a near real-time, single source for all domestic-bound mail and mail aggregate tracking information. This service is for commercial mailers who are tracking domestic-bound barcoded letters and flats within EasyPost. This service offers the following:
- Provides end-to-end mail tracking information for letter and flat pieces
- Leverages intelligence to create logical and assumed handling events
Items of note:
- Any First-Class Mail Flat or Letter label you purchase through EasyPost will come with tracking using Intelligent Mail Barcodes (IMb).
- Not all shipments will have an estimated delivery date due to how this system is set up
- You will be unable to view the tracking information for First-Class Mail letters and flats on the USPS website, as the numbers differ from regular USPS tracking codes
What are the weight and size restrictions for USPS First Class parcels?
For the most part, all USPS First Class parcels must weigh less than 16 ounces, and may not exceed 22" in length, 18" in width, and 15" in thickness. You can read more about USPS First Class parcel restrictions here.
Can USPS provide overnight delivery?
Yes. USPS Priority Mail Express provides 1-2 day delivery to most U.S. locations. There are limitations when it comes to remote U.S. addresses and P.O. boxes, but for the most part, Priority Mail Express is a reliable 1-2 day delivery service.
Can I advance a ship date for USPS shipments?
You can advance a ship date for up to 6 days in advance with USPS.
Do I have to ship my USPS packages exactly on the ship date?
Officially, yes.
In reality, the expectation is for items to be accepted by USPS on the ship date and typically there are not issues on shipping packages with labels dated a few days in advance or a few days afterward as long as the postage rates do not change during that shift.
Disclaimer: EasyPost will not take responsibility for any rejected packages due to dating issues on the label. We recommend shipping the package on the date indicated/print date of the label.
What is a USPS First-Class Mail Large Envelope or Flat?
USPS First-Class Mail flats are a specific type of mail shape that USPS offers delivery for. Flats are larger than Letters, but smaller than parcels. See requirements below.
As noted here, the USPS does not provide a tracking number for USPS flat rate envelope Letters or Flats. You can read about tracking with flats here.
Large envelopes (Flats) specifications:
- The maximum size for large envelopes is 15" x 12" x 3/4" thick.
- The maximum weight for large envelopes is 13 ounces. A large envelope exceeding 13 ounces is classified as a Priority Mail item.
- When a First-Class Mail item exceeds any one of the maximum measurements of a large envelope, it is classified and priced as a package (parcel).
- When a flat size piece of mail is a box or has contents that make the mailpiece rigid, it is classified and priced as a package.
- All large envelopes (flats) must be rectangular.
To get the flat rate for USPS first-class Large Envelope or USPS flat rate envelope within EasyPost, you would use "predefined_package": "FlatRateEnvelope"
in your parcel details like this JSON example:
"options": { "predefined_package": "FlatRateEnvelope", "weight": 1, }
Other USPS First-Class Mail options available with EasyPost:
Card Letter Flat |
Check out our rating documentation for more information about USPS flat rate envelope details.
Can I predict when my USPS package will be delivered?
EasyPost does not have a built-in method for you to do this prior to generating your shipment, but the USPS website offers a tool that will allow you to see their guaranteed service commitments. This tool offers date and time details for what they call their “Service Commitment,” or in other words the time frame they are committed to fulfilling the delivery of your USPS package.
Outlined below are steps to check when a USPS Priority Mail package will be delivered according to the USPS Service Commitment:
- Go to the USPS website
- Enter the information into the 4 blank fields and click continue
- The page will give you expected delivery dates for each service
Please note that only USPS Priority Mail Express is a guaranteed service, meaning it is the only service you can claim a refund for if the delivery was not made under the USPS Service Commitment.
All other service levels will strive to meet the USPS Service Commitment, and for the most part they do. If the USPS does not meet their committed delivery date and time, it’s important to note that EasyPost can’t offer refunds for unguaranteed USPS Priority Mail packages that are delivered past the USPS Service Commitment date.
USPS Priority Mail Express Refunds
Refunds for USPS Priority Mail Express postage that missed the delivery window are not the same as refunding unused postage. Due to this, Priority Mail Express refunds fall outside of the usual refund process within EasyPost. If you printed your shipping label with EasyPost and you have a USPS Priority Mail Express package that misses its guaranteed delivery window, please contact us for a refund (restrictions may apply).
Why are there no delivery_days returned in my API response?
USPS Priority Mail Express does not return a delivery_date_guaranteed or delivery_days in the API response even though the service has guaranteed delivery of 1-2 days. This is a feature that can be turned on for your EasyPost account and must be requested via our support email if you'd like it enabled.
Some USPS Priority Mail rates qualify to return delivery_date_guaranteed data from the USPS. After you generate a shipment rating call with the EasyPost API, you can see the guaranteed delivery date in the API rate response as shown in this JSON example below:
{
"id": "rate_...",
"object": "Rate",
"carrier_account_id": "ca_...",
"service": "Express",
"rate": "35.48",
"carrier": "USPS",
"shipment_id": "shp_...",
"delivery_days": 1,
"delivery_date": "2013-04-23T05:40:57Z",
"delivery_date_guaranteed": true,
"created_at": "2013-04-22T05:40:57Z",
"updated_at": "2013-04-22T05:40:57Z"
}
How do I use USPS soft pack or padded envelopes with cubic pricing?
You can use a specific predefined package type to get USPS Priority Mail or USPS Ground Advantage Cubic Soft Pack or Padded Envelope rates with cubic pricing. Soft Pack or Padded Envelope Cubic Pricing is a USPS Priority Mail and USPS Ground Advantage shipping option that can be used with the EasyPost API.
For details how to use soft pack or padded envelope cubic pricing see the USPS Cubic Pricing Guide.
How do I get USPS media mail rates and library mail rates on EasyPost?
EasyPost offers support for both USPS Media Mail rates and USPS Library Mail rates for your online USPS shipping labels. In order to receive Media Mail rates or Library Mail rates, you will need to set the Shipment Option special_rates_eligibility value to "USPS.MEDIAMAIL" or "USPS.LIBRARYMAIL" respectively.
EasyPost does not return special rates by default, which is why the special_rates_eligibility Shipment Option is required to return both library mail and media mail rates.
Here is a JSON example of using the Shipment Option with special rates:
"options": { "special_rates_eligibility": "USPS.MEDIAMAIL", “USPS.LIBRARYMAIL”, }
Can I get a USPS shipping label refund on USPS packages returned to sender?
Unfortunately no, you cannot request a refund for USPS postage fees once the label has been used - even if it is returned. Once a package has been accepted into the USPS postal stream, it cannot be refunded. If for some reason you need to request a refund for any USPS postage fees, you must ensure that the USPS shipping label is unused and remains in pre_transit status (meaning it has not been shipped into the mail stream).
You can request a USPS shipping label refund of USPS postage fees via an API call or by logging into your EasyPost account.
Node.js example of a refund request:
To refund via the dashboard, you can go to your shipments here. Once there, find the shipment you want to be refunded, click on the Details link to expand the information, and there you will find a REFUND button on the right-hand side. Click it to request a refund from the USPS.
Please note that USPS shipping label refunds for USPS postage fees will take the USPS 15 to 30 days to process, and you must request the refund within less than 30 days of the creation of the label. Waiting beyond this 30-day refund window will result in your refund request being rejected by the USPS.
As for any potential EasyPost label fees with USPS only, when you request a refund within the 30-day window for an unused label and the USPS approves the refund, we will automatically refund the EasyPost label fee as well.
Is there a tracking status for a returned package that was delivered back to sender?
Basically, no. For USPS delivered packages that are then returned to the sender, the carrier already scanned the package as delivered within the USPS system so you will still see the "Delivered" status on the EasyPost tracking status page rather than “Returned To Sender” for that tracking number. When the USPS makes a "Delivered" scan on the USPS tracking number, the EasyPost system stops receiving tracking status updates for that specific USPS tracking number resulting in no further updates received for any USPS return to sender status notifications.
The Tracker object contains all of the USPS tracking information for a package. A Tracker is created automatically whenever you buy a Shipment through EasyPost; if you don’t use EasyPost to purchase your USPS shipping labels, you can still track packages through our API by creating a Tracker object directly. You would do this by entering the USPS tracking number into an API call to generate an EasyPost tracker ID for the package. Each Tracker is continually updated in the background as the package moves through its life cycle, regardless of whether or not the label was purchased through EasyPost.
After creation, a Tracker object will be updated periodically based on when the carrier provides EasyPost with new information on the tracking number. This information can be consumed by using our webhooks infrastructure. Every time the USPS tracking number is updated a webhook Event will be sent.
If you need to differentiate between packages delivered to the recipient and packages returned to sender, you can use the "previous_attributes" hash on the webhook event object to determine the status of the tracker before the package was delivered.
The Tracker object contains both the current information about the package as well as previous updates. All of the previous updates are stored in the tracking_details array. Each TrackingDetail object contains the status of the package during a specific scan event.
Possible values of the TrackingDetail status:
unknown |
available_for_pickup |
pre_transit |
return_to_sender |
in_transit |
failure |
out_for_delivery |
canceled |
delivered |
error |
Here is an example of the JSON returned on the TrackingDetail object:
"tracking_details": [ { "object": "TrackingDetail", "message": "Shipping Label Created", "status": "pre_transit", "datetime": "2015-12-31T15:58:00Z", "source": "USPS", "tracking_location": { "object": "TrackingLocation", "city": "FOUNTAIN VALLEY", "state": "CA", "country": null, "zip": "92708" } }, { "object": "TrackingDetail", "message": "Arrived at Post Office", "status": "in_transit", "datetime": "2016-01-07T06:58:00Z", "source": "USPS", "tracking_location": { "object": "TrackingLocation", "city": "FOUNTAIN VALLEY", "state": "CA", "country": null, "zip": "92728" } } ],
Can I refund my USPS First-Class Mail Letters or Flats?
Currently, these types of labels fall outside the normal refund process, so we can't support refunding USPS First-Class Mail letters and flats within EasyPost.