Connecting to UPS, DHL, InPost, Correos, Poste Italiane, DPD, GLS and SEUR normally takes weeks of contracts, business accounts and APIs that break every quarter. NullShip's wholesale API puts all of it behind a single token: you sell labels to your own customers at your price, and we handle the plumbing with the carriers. One REST API, JSON throughout, over Tor — set your markup, keep the margin, cash out in crypto.
Every carrier has its own onboarding, its own label format and its own idea of what a valid postal code is. Multiply that by dozens of services and 30 countries and you have a months-long project before you sell your first label — plus endless maintenance every time one of them changes something.
The usual alternative is reselling by hand: take the order in chat, pay for it yourself, forward the PDF. It does not scale, and it leaves you with no consistent pricing and no books.
POST /api/v1/rates returns live rates; POST /api/v1/labels mints the real label and hands you the PDF. Underneath, our routing layer picks the best source for each corridor and serves it instantly — that logic is ours and you never see it. You talk to a single endpoint and always get the right rate, with no contracts or integrations to maintain.
curl -x socks5h://127.0.0.1:9050 \
-H "Authorization: Bearer nsk_test_…" \
-H "Content-Type: application/json" \
-d '{ "from": {…}, "to": {…}, "parcel": {"weight": 2, "length": 30, "width": 20, "height": 10} }' \
http://nshipaklqgackrcrezr4lum3msy4wfdlnmmb6wzzbuy7onbjnmckbxad.onion/api/v1/rates
Live rates for a corridor — the same call works in sandbox or production.
The heart of the reseller model. You create sub-accounts for your own customers — each with its own balance, label history and login. Every call you make on their behalf carries an X-Sub-Account-Id, so the system attributes each cost and each margin to the right party automatically.
POST /api/v1/sub-accounts — register a customerGET /api/v1/sub-accounts/me/labels — the customer checks their shipmentsPOST /api/v1/sub-accounts/me/topup — the customer tops up (crypto invoice) or redeems a prepaid codeBuild your own front-end with signup-token → register → auth, or skip the development entirely and use our web wizard, Telegram bot or mini-app — built for resellers who do not want to write code.
You define your markup — global or per country-to-country corridor. Every label a customer of yours buys generates a profit that accrues in your commission cycle. At close you withdraw it: in crypto (BTC / LTC / XMR) or moved to another account's balance. The dashboard shows every movement, which sub-accounts are online live, and the profit breakdown per sale.
NullShip is onion-only by design: the API lives on a .onion service, with bearer-token authentication and keys shown only once (we store only the hash). Payments and payouts in crypto. No JavaScript required — it works even with Tor at the highest security level.
Every partner gets two keys: nsk_test_* (sandbox) and nsk_live_* (production). In sandbox, /rates returns real data and /labels gives you a synthetic label with fake tracking — zero balance movement. Build and test your whole integration, and when it is ready, switch keys. That is it.
Access is invite-only. Open an account, open a ticket (or reach us over PGP) telling us what you want to build, and we will enable sandbox plus production.
Create an account →