Documentation
ShipLabel
Settings
USPS

USPS

Navigate to WooCommerce → ShipLabel → USPS.

SettingDefaultDescription
Enable USPSOffMaster toggle for USPS label generation and checkout rates
EnvironmentProductionProduction or Sandbox / Testing
Client ID-Consumer Key of your app at developers.usps.com
Client Secret-Consumer Secret of the same app
CRID-Customer Registration ID from the Business Customer Gateway. Needed for labels only
Mailer ID (MID)-Needed for labels only
Manifest MID-Optional. Leave blank to use the Mailer ID
EPS Account Number-Enterprise Payment System account that pays for postage. Needed for labels only
Default servicePriority MailPre-selected service on the order panel, and the service used for bulk and automatic labels
Label formatPDFPDF or TIFF

Click Test connection after entering the Client ID and Secret. It confirms ShipLabel can sign in to USPS; it does not check label access or your payment account.


What Each Feature Needs

Rates and tracking work with just the Client ID and Secret. Label purchases and address validation need extra access from USPS:

FeatureNeeds
Rates (order panel and checkout)Client ID + Client Secret
Tracking syncClient ID + Client Secret
Labels (create and cancel)Labels API access on your USPS app, plus CRID, MID and EPS account number
Address validationAn Addresses API license on your USPS business account

Payment Account (Required for Labels)

Every USPS label request must carry a payment authorization that tells USPS which account pays for the postage. ShipLabel requests it automatically from your CRID, Mailer ID and EPS account number, keeps it for 7 hours, and requests a fresh one when it expires or USPS rejects it.

Where to find the numbers:

  • CRID - sign in to the Business Customer Gateway (opens in a new tab); it's shown on your business profile.
  • Mailer ID (MID) - in the Business Customer Gateway under Mailing & Shipping Services. Request one there if you don't have it yet.
  • EPS account number - create an Enterprise Payment System account in the Business Customer Gateway (or via Create a Payment Account in Click-N-Ship) and add a funding method.
⚠️

The account number shown in Click-N-Ship is your USPS.com account, not your EPS account number. Entering it in the EPS field will make every label request fail.

Your USPS app also needs Labels API access, which USPS enables per app. Until it does, label requests fail with "Insufficient OAuth scope" even though Test connection succeeds. Request access through the USPS business portal (cop.usps.com (opens in a new tab)) or USPS API support.

If the CRID, MID or EPS account number is missing, ShipLabel stops before contacting USPS and shows: "USPS label creation needs your CRID, Mailer ID (MID) and EPS account number."


Address Validation

USPS requires an Addresses API license for address validation. Without one, Validate with USPS shows USPS's own "not authorized for access to Addresses API" message. Add the license in the USPS business portal (cop.usps.com (opens in a new tab)) under My Account → API Licenses → Add an Addresses API License.


Supported Services

USPS Priority Mail, Priority Mail Express, Ground Advantage, First-Class Package, Media Mail, and Library Mail. USPS shipping in ShipLabel is domestic (US addresses).

USPS retired First-Class Package Service in 2023 and now prices it as Ground Advantage.

Package Types

Package typeAvailable on
Your PackagingEvery service - priced by weight and dimensions
Flat Rate EnvelopePriority Mail, Priority Mail Express
Small / Medium / Large Flat Rate BoxPriority Mail

The order panel disables Flat Rate options that don't apply to the selected service, and ShipLabel double-checks the combination before contacting USPS, so you get a plain-English explanation instead of a rejected label purchase. Rates are always requested for exactly the selected service and package type.