GoatLabels GoatLabels
Built for purchase orders, not carts.

Shipping labels for wholesale distributors


Every PO, one queue, no per-account fee.

Wholesale distributors can turn purchase orders that arrive by email, ERP export, portal, or system call into shipping labels from one queue: GoatLabels takes each through the AI assistant, bulk CSV import, 13 connectors, or a REST API, rate-shops USPS, UPS and FedEx on every domestic parcel with DHL on international lanes, and bills per label with no monthly fee on Free (50 shipments a month).

Log in

USPS, UPS and FedEx on every domestic carton

DHL joins on international lanes, and UPS and FedEx quote from Singapore too, whichever account the carton is going to.

UPS FedEx DHL USPS DHL: international
Live quotes Side by side, one screen.
Bulk CSV ERP exports, aliased headers.
Label API One Bearer header.

A wallet, not a seat per account

Fund one prepaid wallet and spend it label by label across every retail account you serve.

VisaMastercardAmerican ExpressApple PayGoogle PayBitcoinEthereumTether (USDT)
Prepaid Spent label by label.
No monthly fee on Free, up to 50 a month A quiet account costs nothing.
Pay as you go The bill tracks the dock.
Which PO, which way in

How do purchase orders get into one label queue?

Wholesale distributor shipping labels start with purchase orders that arrive by email, ERP export, portal, or system call rather than a cart. GoatLabels puts all of them in one To Ship queue through the AI assistant, bulk CSV import with header aliasing, 13 storefront connectors, and a REST API, then rate-shops USPS, UPS and FedEx (DHL on international lanes) and auto-prints via PrintNode. The table matches each kind of PO to its intake path.

Updated

Kind of order How it gets in When to use it
PO emailed by a retail buyer Paste the email or drop a screenshot; the AI assistant drafts the recipient, parcel, and service for you to confirm. Best for the one-off reorder from a small account that never touches your ERP.
Weekly POs exported from an ERP Bulk CSV import. Header aliasing maps the ERP's column names to recipient, address, and parcel fields without a saved template. Best for the batch run: up to 500 rows per import, and every open PO in the file lands in the To Ship queue at once.
Orders from a wholesale storefront Sync from any of the 13 connectors, including Shopify, WooCommerce, BigCommerce, and Magento, into the same queue. Best when your B2B portal already runs on one of the connected platforms.
Orders your own system generates The REST label API with one Bearer header. Create the shipment, compare rates, buy the label from the ERP itself. Best when the ERP already knows the carton count and weight at release time.
Choosing the carrier per account USPS, UPS and FedEx side by side on every domestic parcel, DHL on international lanes; UPS and FedEx from Singapore. Pick per account and per parcel; a retailer's routing preference is a choice, not a rule you code in.
Paying for the labels Pay-as-you-go from a prepaid wallet with no monthly fee on Free (up to 50 shipments a month), and auto-print via PrintNode or the browser at the dock (PrintNode on Pro). One wallet across every account, whichever path the order took to get in.

Every path above lands in the same To Ship queue and buys from the same prepaid wallet. A distributor rarely gets all of its purchase orders one way, and it does not have to.

What should a distributor's label workflow get right?

Wholesale orders rarely come from a cart

A distributor's day is purchase orders: some emailed, some exported from an ERP, a few from a B2B portal. Each has a way into the same To Ship queue — the AI assistant for the email, bulk CSV import with header aliasing for the export, a connector for the portal, the REST API for the ERP — so nothing is retyped.

Account count should not set your software bill

Distributors add and lose retail accounts through the year, and a seat-based or tiered subscription charges for the roster you hope to have. Pay-as-you-go labels from a prepaid wallet mean the bill tracks the cartons that actually left the dock, plus Pro's one flat $40 a month past 50 shipments.

Multi-carton shipments still need one rate view

Retail accounts ask for different carriers and services, and the right answer changes with the parcel. USPS, UPS and FedEx quoted side by side on each domestic label, with DHL on international lanes, makes that choice per account and per box, and auto-print via PrintNode puts the label on the printer at the dock.

And when you should stay where you are

  • Your accounts route on carriers outside USPS, UPS, FedEx, and DHL, or from an origin other than the US and Singapore.
  • You need pallet, LTL, or freight booking. GoatLabels is a parcel label engine, and this page does not claim otherwise.
  • Your ERP already has a working label integration your accounts rely on, and nobody on the team is unhappy with it.
Orders in, labels out

Connect the stores. Import the rest. Print at the station.

Connect a Shopify, WooCommerce, Amazon, eBay, TikTok Shop, Etsy, Walmart, BigCommerce, Squarespace, Wix, Square, Magento, or Temu store and its orders land in the To Ship queue. Orders that arrive as a spreadsheet come in through bulk CSV import, where header aliasing maps whatever the sender called each column. Orders that arrive as a message or a screenshot go to the AI assistant, which drafts the label for you to confirm. Every domestic label is rate-shopped across USPS, UPS and FedEx (DHL on international lanes), paid from a prepaid wallet with no monthly fee on Free (up to 50 shipments a month), and auto-printed through PrintNode or the browser at the station that needs it (PrintNode on Pro).

1
Every source, one queue
Connector, CSV, API, or message
ops_northside

Rush order: 3x cartons (12 lb) to Maya R., Austin, TX 78701 — needs to go today

Shopify
Synced into To Ship
TikTok Shop
Synced into To Ship
CSV import
Order
#1847
Customer
Jordan Lee
Items
1x Carton (12 lb)
Address
Brooklyn, NY
Drop the CSV or paste the order

13 connectors, bulk CSV with header aliasing, the REST API, and pasted orders — one To Ship queue.

2 Billy AI assistant

Drafting the order that arrived as a message.

Billy AI
  • Reads a pasted order, an email, a voice note, or a screenshot
  • Fills in the recipient, the address, and the parcel details
  • Rate-shops USPS, UPS and FedEx side by side, DHL on international lanes
  • Hands the drafted label back for you to confirm
Drafted. Checked. Yours to confirm.
3
Label out at the station
Bought from the wallet
Paid from your prepaid balance
Pay-as-you-go, no monthly fee on Free, up to 50 a month
$12.47
USPS
Label purchased
USPS Priority Mail — rate shown is the debit
$12.47

Auto-print via PrintNode or the browser (PrintNode on Pro). Tracking is pushed back to the connected store when the label prints.

Where the orders actually come from.

13 connectors for the stores, CSV and API for everything else.

Shopify, WooCommerce, Amazon, eBay, TikTok Shop, Etsy, Walmart, BigCommerce, Squarespace, Wix, Square, Magento, and Temu sync into To Ship and get tracking pushed back when you print. Orders that never lived in a storefront — a spreadsheet from a client, a call from a WMS, a pasted email — go into the same queue by CSV import, the REST API, or the AI assistant.

Shopify logo Shopify
Etsy logo Etsy
WooCommerce logo WooCommerce
TikTok Shop logo TikTok Shop
Amazon logo Amazon
eBay logo eBay
Squarespace logo Squarespace
Wix logo Wix
Walmart logo Walmart
Square logo Square
BigCommerce logo BigCommerce
Magento logo Magento
Temu logo Temu
Patreon logo Patreon
What an operation keeps, and what it stops paying for.

The connectors, the carriers, the API.
On a flat plan, not a tier sized to your peak.

Moving a label engine should not cost you the carriers, the store sync, or the API. Those all come with you. What does not come with you is a monthly fee sized to your peak month — and what is new is an assistant that turns an unstructured order into a drafted label.

One prepaid wallet,
spent label by label

Fund the wallet and every label is a pay-as-you-go debit against it. There is no contract. Free covers 50 shipments a month at $0, and Pro is a flat $40 a month with unlimited shipments, so the balance you fund, plus Pro's one flat fee if you are on Pro, is all you reconcile.

Wallet balance
$1,247.36 USD
AI

AI drafting for orders
that are not structured

An email from a client, a screenshot of a form, or a spoken address is not an order record. The AI assistant reads it and drafts the whole label — recipient, parcel, and service — for you to confirm.

Billy Billy LIVE
Where's the package to Maya?
It's in transit via UPS. Expected Friday, Aug 7.
UPS
1Z8923A6B05G4123456
In transit
Austin, TX → Dallas, TX
Ask Billy anything...

One flat plan
past 50 a month

Fund the wallet and pay for each label as you go. Free covers 50 shipments a month with no monthly fee; past that, Pro is $40 a month flat with unlimited shipments and no minimum term, so you can cancel it when volume drops.

Shipment summary
UPS Ground $12.49
Insurance $0.75
Fuel surcharge $0.32
Total $13.56

USPS, UPS, FedEx, and DHL
in one account

Live rates from USPS, UPS and FedEx side by side on every domestic parcel, DHL on international lanes, and UPS and FedEx from Singapore origins too. That is the honest carrier list; if you need one outside it, a broader network is the reason to stay elsewhere. Thirteen storefront connectors sync into To Ship and push tracking back when you print, but a connector is never a prerequisite.

Compare rates
UPS UPS $12.48
FedEx FedEx $13.22
DHL DHL $14.10
USPS USPS $11.79
Duties inside the quote where DDP applies

The API your
warehouse system calls

REST and JSON with one Bearer header. Create the shipment, compare rates, buy the label, and auto-print it via PrintNode — the dashboard and the API spend the same prepaid balance.

POST /v1/shipments
{
"to": { "name": "Maya" },
"from": { "name": "Alex" },
"service": "ups_ground",
"label_format": "pdf"
}
Webhook delivered
GoatLabels mobile shipments queue with side-by-side carrier prices
The AI assistant drafting a label from a pasted order on mobile

Label ready

CL-1038 · Brooklyn, NY

The dock, not the desk

An email is a valid order input.

Subscription platforms expect the order to already exist somewhere they can read. When it arrives as a message, you become the integration — retyping a name, an address, and a weight into a laptop you are not sitting at. GoatLabels takes the message itself, on the phone that is already at the pack station.

Paste the order or drop a screenshot — the AI assistant pulls out the recipient, the address, and the parcel.
Bulk CSV import with header aliasing for the files that arrive by the hundred.
USPS, UPS and FedEx come back as rates on one screen, DHL on international lanes.
Buy from the prepaid balance and auto-print via PrintNode or the browser.
Hold the mic at the station and say the address — the assistant drafts it and reads the rate back.
Hands full of cartons

Talk to the assistant, not to an import screen.

Packing is a two-hands job, and most software's answer is a form. Hold the mic, say who the parcel is going to, and the assistant drafts the label, rate-shops USPS, UPS and FedEx (DHL on international lanes), and queues it against your prepaid balance, then answers for it afterwards when a client asks where the parcel is. This is the real product, not a render.

goatlabels.io/dashboard/shipments — assistant
The AI assistant reading back a parcel's tracking history over the purchased labels list

Listening

"Where's the Austin rush order?"

Out for delivery

CL-1039 · Austin, TX · by 6 PM

Plain English in — names, addresses, weights, carriers, services · nothing to import and nothing to map · reads the rate back before a cent leaves the wallet · phone or browser.

Side-by-side quotes

The quote is the debit.

Carriers quoted on the same parcel, each a number that is the exact amount leaving your prepaid balance. Nothing is added on the way through, and the only plan charge is Pro's flat $40 a month, which you need once you ship more than 50 a month.

CA → NY 2.6 lbs 12×8×4 in
USPS

USPS

Ground Advantage

2 to 5 days

$11.40

all-in · no surprises

Cheapest
UPS

UPS

Ground

1 to 5 days

$9.85

all-in · no surprises

FedEx

FedEx

Ground

1 to 5 days

$11.20

all-in · no surprises

Pay-as-you-go, label by label One wallet across every client Multi-currency display
Public API v1

An operation with a WMS behind it.

A warehouse system already knows the order, the bin, and the box. REST, JSON, and one Bearer header let it request the rate and the label directly, and auto-print via PrintNode puts the result at the station (PrintNode on Pro). The dashboard and the API buy from the same prepaid balance.

Create, rate-shop, and buy — a few calls, no SDK required
One Bearer header — no signing scheme to implement
USPS, UPS and FedEx rates in one response, DHL on international lanes
Auto-print via PrintNode from the same call (on Pro)
Read the API docs Get an API key $0 monthly fee
curl https://api.goatlabels.io/api/v1/shipments
POST /api/v1/shipments
Authorization: Bearer sk_live_…
Idempotency-Key: ord_8421

{
  "to": { "name": "Joyce", "city": "Berlin", "country": "DE" },
  "parcel": { "weight": 2.6, "weight_unit": "lb" },
  "service": "fedex_intl_priority"
}
No contract, no seats

One flat plan, no seat or store tiers.

Labels are pay-as-you-go from a prepaid wallet, with no monthly fee on Free for up to 50 shipments a month; past that, Pro is $40 a month flat with no shipment cap. The 13 connectors, bulk CSV import, the REST API, browser printing and the AI assistant come with both plans; PrintNode auto-print comes with Pro.

Pro

Most popular
$40 / month
The same carriers, connectors, and queue
Auto-print via PrintNode at every station
AI assistant Telegram logo — draft a label from a message, screenshot, or voice
API access on the same prepaid balance

Rate by plan

illustrative
Free Pro

pay for labels, not for seats

Free

$0 / forever

Up to 50 shipments a month with no subscription: enough to run the workflow on real orders before you need Pro.

Pay-as-you-go labels, no monthly fee, up to 50 shipments a month
USPS, UPS and FedEx on every domestic parcel; DHL on international lanes
The REST label API with one Bearer header
AI assistant that drafts labels from a message or screenshot
13 storefront connectors and bulk CSV import included

The assistant is not a paid tier

The AI assistant that reads an email, a screenshot, or a voice note into a drafted label is part of the product, not an add-on.

Web, every plan Telegram logo Telegram, Pro

API on every plan

GET /api/v1/shipments

200 OK · plan: free

One Bearer header. The same wallet as the dashboard.

Bring the invoice you pay today

Put a real parcel through and compare the side-by-side rate against what that label costs you on

ShippoPirate ShipShipStation
No contracts No monthly fee Start in seconds
USPS UPS FedEx DHL

Label prices are quoted live from USPS, UPS, FedEx, and DHL and shown as one number — the same number that leaves your wallet. Other vendors' plans and fees move, so compare against their current pricing page rather than a figure on ours. Full pricing details

Which operations this actually suits

Not every operation should move.

These are the teams for whom pay-as-you-go labels, one queue, and a label API add up to a real difference. The operations that should stay put are named on this page too.

Operations with a rotating client roster

Shopify logo Clients come and go monthly

Prepaid

Volume that arrives per client fits a prepaid wallet better than a seat count. Onboard a client, connect their store, and pay for their labels when they ship, plus Pro's flat $40 a month once your total passes 50 shipments a month.

4 carriers in one account no monthly fee bulk CSV
goatlabels.io/dashboard/shipments
GoatLabels shipments queue with purchased labels

Warehouses with a WMS already in place

WooCommerce logo REST API, one Bearer header

Let the warehouse system request the rate and the label, and auto-print the result at the station through PrintNode. Nothing is retyped between the two.

One queue, connector or not

Order #1024 · created via API

Instagram logo

Ops teams living in email and chat

Messenger logo The orders that never became a record

rush cartons to Austin, can they go today?
Label drafted · CL-1024

Multi-channel merchants outgrowing one store

Shopify logoWooCommerce logo 13 connectors, one balance

1

wallet behind every store and the API

Real sellers, real words

Teams that stopped paying a subscription to print a label.

A video took off and I had 80 TikTok Shop orders by morning. I printed every label from my phone on the bus to the post office.
E

Early customer · TikTok

TikTok Shop seller

TikTok logo TikTok Shop
I run my Etsy shop from the kitchen. The AI reads the order, picks the carrier, the label prints. That's the whole workflow now.
E

Early customer · Etsy

Etsy maker

Etsy logo Etsy
The API is what every shipping API pretends to be. Idempotency that actually works.
S

Sasha R.

Staff engineer, marketplace

API user

Wholesale distributor shipping labels — FAQ

How do wholesale distributors print shipping labels for retail accounts?
By getting every purchase order into one queue regardless of how it arrived, then rate-shopping and printing per parcel. GoatLabels takes emailed POs through the AI assistant, ERP exports through bulk CSV import with header aliasing, portal orders through 13 storefront connectors, and system orders through the REST API, then quotes USPS, UPS and FedEx side by side (DHL on international lanes) and auto-prints via PrintNode or the browser (PrintNode on Pro), all paid from a prepaid wallet with no monthly fee on Free, up to 50 shipments a month.
Can I import purchase orders from my ERP?
Yes. Export the open POs as a CSV and use bulk import. Header aliasing maps the ERP's column names to the recipient, address, and parcel fields, so the file imports without building a template for that system. Each import takes up to 500 rows.
Can I create labels from an emailed purchase order?
Yes. Paste the email or drop a screenshot of it and the AI assistant drafts the recipient, the parcel, and the service for you to confirm before anything is bought.
Does GoatLabels do freight or pallet shipments?
No. GoatLabels is a parcel label engine for USPS, UPS, FedEx, and DHL. For pallet or LTL bookings, keep the tool you use today; parcel cartons from the same PO can still run through GoatLabels.
Is there a monthly fee for a distributor account?
Not per retail account. Labels are pay-as-you-go from a prepaid wallet: Free has no monthly fee for up to 50 shipments a month, and past that Pro is one flat $40 a month for unlimited shipments, however many retail accounts you serve.
Can my ERP buy the labels directly?
Yes. The REST label API takes one Bearer header, so an ERP can create the shipment, compare USPS, UPS and FedEx rates (DHL on international lanes), and buy the label at release time. Auto-print via PrintNode sends the result to the printer at the dock.

Related reading: shipping software for 3PLs, warehouse shipping labels, bulk shipping labels from CSV, shipping labels for Faire orders, B2B shipping software compared, enterprise shipping software options, when a PO should go LTL instead of parcel, multi-location shipping software.

Book a 30-minute shipping review

Bring your monthly volume and carriers. We rate-shop USPS, UPS and FedEx on your domestic lanes (DHL on international ones) and show the wallet, CSV import and API on one screen. No contract to sign.

  • A working session on your lanes, not a slide deck.
  • Have last month's shipment export handy. A CSV is fine.
  • Pick any open time on the calendar. You get an email confirmation.

Rather start on your own? Create a free account.

Test it on the next order that lands.

Keep the carriers and the connectors.
Drop the monthly fee.

Fund a prepaid wallet, put through the next order you would have shipped anyway, and compare the side-by-side USPS, UPS and FedEx rates (DHL on international lanes) against what that label costs you today.

No card required. No monthly fee on Free, up to 50 shipments a month.

Updated

Book a 30-minute shipping review

Pick a time on our Google Calendar booking page. It opens in a new tab.

Open the booking calendar