Carriers including USPS, UPS, and Canada Post require e-commerce marketplaces to use separate Managed Shippo accounts for each merchant. If you run a marketplace, a Platform Account is not optional.
Start here: what are you building?
Answer one question before you write your first API call.My own business ships packages
You’re a single company sending your own shipments and you are the shipper of record.Use our quickstart guide →
I'm building a platform for other businesses to ship
You’re a marketplace, WMS, e-commerce platform, or other app where merchants or customers ship through your product.See your account model options below.
If you’re a platform: choose your account model
Platforms have two options depending on who owns the billing relationship with each merchant.White label (Platform Accounts)
You own the billing relationship. Shippo is invisible to your merchants. You create and manage a headless Managed Account for each merchant via the API. When making API calls on behalf of a merchant, include their account ID in the request header:SHIPPO-ACCOUNT-ID: <id>
- Billing: You collect and manage with your shippers
- Branding: Fully yours, Shippo invisible
- Merchant login: None required
- Best for: Marketplaces, SaaS platforms, 3PLs
Gray label (OAuth)
Your merchants create their own Shippo accounts and connect via OAuth. Shippo bills them directly. You receive an OAuth token and make API calls on their behalf. Setup requires a contact email and callback URL from you. Shippo provides an OAuth ID and secret. Merchants authorize your platform through the Shippo OAuth flow.- Billing: Shippo handles directly
- Branding: Co-branded (Shippo visible)
- Merchant login: Merchants create Shippo accounts
- Best for: WMS, IMS, and tools where merchants want their own Shippo relationship
Then: how do you want to build the UI?
This decision is separate from your account model and applies to both white label and gray label integrations.Build native UI
Call the Shippo API directly and build your own interface. Most flexible, most work. You own the entire experience.
Shipping Elements
Embed Shippo’s pre-built shipping widget using a JavaScript SDK. Include one script tag, call
init() to authenticate, and render it into your page. Shippo maintains and updates it. Supports both white and gray label.How the account structures compare
Each model has a different relationship between your platform, Shippo, and your merchants.| Direct API | White Label | Gray Label (OAuth) | |
|---|---|---|---|
| Account structure | All shipments on your single Shippo account | Platform account with one headless Managed Account per merchant | Each merchant connects their own Shippo account via OAuth token |
| Recommended for platforms | No | Yes | Yes |
Quick comparison
| Direct API | White Label | Gray Label (OAuth) | |
|---|---|---|---|
| Who owns billing | You | You | Shippo (billed per merchant) |
| Merchant Shippo account | None (your account) | Managed, headless, invisible | Merchant’s own account |
| Shippo visible to merchants | N/A | No | Yes (co-branded) |
| Per-merchant carrier accounts | No — shared | Yes | Yes |
| Per-merchant reporting | No — commingled | Yes | Yes |
| Merchant manages Shippo login | No | No | Yes |
| Setup complexity | Low | Medium — request Platform Account | Medium — set up OAuth credentials |
To set up a Platform Account (white label) or OAuth credentials (gray label), contact Shippo or reach out to your account team. Both require a brief setup step before you can begin building.