Skip to main content

Connect Shippo to Nevuto

What is Shippo?

Shippo is a North-America-focused multi-carrier shipping aggregator. Through a single API you can ship via USPS, UPS, FedEx, DHL Express, Canada Post, and many other carriers — both US/Canada domestic and international. For Nevuto stores selling in the US or Canada, it's one of the easiest ways to add reliable shipping without negotiating with each carrier individually.

How Nevuto handles Shippo

  • Nevuto connects to Shippo via its official API and sets up the webhook automatically — no manual step required.
  • When you fulfil an order, Shippo pulls live rates from every carrier and picks the cheapest one.
  • A printable label PDF is generated for every Nevuto order with one click.
  • Tracking numbers and status updates sync automatically through Shippo webhooks.
  • You can go live with a real token or test the flow safely using Test tokens.

1. Prerequisites

  • An active Shippo account. If you don't have one yet, sign up at goshippo.com.
  • At least one carrier account connected in Shippo (USPS is enabled by default; for UPS/FedEx you'll need to connect your own account).
  • Your store currency must be USD or CAD — in any other currency Shippo shows "Not available" in the provider list.
  • Your sender address country should be US or CA (most common); coverage is limited elsewhere.
  • Account funding: top up your Shippo wallet or save a credit card. Every label is charged in real time.

2. Shippo API token

  1. Sign in to your Shippo dashboard.
  2. Top right → Settings → API.
  3. Create a token under the Live tokens tab (or Test tokens for testing).
  4. Copy the token — you'll paste it into Nevuto in the next step.

⚠️ A live token produces real labels and charges your account. For testing, use Test mode (below).

3. Connecting Shippo in Nevuto

  1. In the Nevuto admin panel, go to Settings → Shipping → Shipping providers.
  2. Pick Shippo from the list.
  3. Paste your Shippo token into the API key field.
  4. Turn on the Enable shipping method toggle.
  5. (Optional) Test mode toggle: turn it on if you're using a test token. Leave it off when using a live token.
  6. Click Submit.

On submit, Nevuto:

  • Saves the API key securely
  • Sets up the webhook automatically on your Shippo account — no manual step
  • Removes any old webhook and registers a new one (re-submitting refreshes it the same way)

4. Preferred carriers

After you save, a Settings card opens below:

  1. Pick one or more carrier account IDs from the Preferred carriers dropdown.
  2. The dropdown is pulled live from your Shippo account — you'll only see carriers that are active for you.
  3. Submit.

Behaviour:

  • When fulfilling an order, Shippo pulls quotes from every carrier → filters down to your preferred ones → picks the cheapest.
  • If you don't pick any, Shippo's "best value" rate is used.
  • If your preferred carrier doesn't serve that route, the cheapest available option is picked instead (your order isn't blocked).

💡 The dropdown shows your carriers by their readable names (USPS, UPS, DHL Express, etc.).

5. Sender address

Shippo uses your sender address on every shipment. Nevuto pulls it from your store default location:

  1. Go to Settings → Locations.
  2. Fill your default location with a US/CA address:
    • Street, City, State (short code: CA, NY, etc.), ZIP, Country (US/CA), Phone

⚠️ Use a short state code (e.g. CA, NY, TX) — Shippo won't accept the full state name.

6. Shipping packages

Shippo asks for package dimensions and weight on every shipment. Nevuto resolves them in this order:

  1. Variant LWH values
  2. ShippingPackage reference
  3. Store default package
  4. Fallback: Shippo's own default (usually a mismatch)

Steps:

  1. Go to Settings → Shipping → Packages.
  2. Add package → Name, Type, L/W/H/unit, weight.
  3. Set as default → store-wide fallback.

7. Variant LWH

Add the real dimensions and weight to each variant:

  1. Products → edit product → Variants.
  2. Fill Length / Width / Height / Weight.
  3. Unit: cm/in, weight: g/kg/oz/lb.

8. Customs declaration (international)

When shipping from US/CA to another country, Nevuto attaches a customs declaration automatically:

  • Items: order line items (product description, quantity, weight, value, country of origin)
  • US customs requirements: required exemption flags are added automatically
  • Currency: store currency (USD/CAD)
  • Contents type: MERCHANDISE

HS code: not stored per product in Nevuto → sent empty. You can fill it manually in the Shippo dashboard if needed.

9. Shipping an order

After the customer pays, the order appears in your admin with a "Mark as shipped" button.

  1. Open the order detail page.
  2. Click Mark as shipped.
  3. In the modal, pick Shippo as the provider and submit.
  4. Within a few seconds, the order row shows the tracking number, tracking link, and a "Print label" button. At the same moment, Shippo charges your account for the label.
  5. Click Print label to open the label as a PDF, print it, and stick it to the package.
  6. Hand the package to your chosen carrier — tracking is updated automatically from there.

💡 The customer can follow the parcel from the tracking link in their order page and also receives email updates as the status changes.

10. Status lifecycle

Mark as shipped
    │
    ▼
[shipping_status: PROCESSING]      ← Label printed, carrier hasn't picked up yet
    │
    ▼   When the carrier scans the parcel
[shipping_status: SHIPPED]         ← Shippo webhook fires
    │
    ▼   Delivered to the customer
[shipping_status: DELIVERED]       ← Webhook

The webhook is wired up during setup — Shippo tracking updates flow back into Nevuto and order status updates automatically.

11. Test mode

Shippo provides a proper test environment:

  1. Shippo dashboard → API → Test tokens tab → grab a token.
  2. In Nevuto, Settings → Shipping → Shippo → turn on Test mode and replace the API key with the test token.
  3. Submit.
  4. Test shipments:
    • Return a tracking number
    • Generate a label PDF (Shippo-branded test page)
    • No real charge on your account
    • Test webhooks are sent
  5. Before going live, turn off Test mode and swap the API key for your live token.

12. Common issues

A. Label created but tracking isn't updating

  • There may be a Shippo rate selection problem. Common causes:
    • Sender/recipient address validation issues (e.g. wrong state short code)
    • Missing HS code on an international shipment
    • Your carrier account is paused
  • In the Shippo dashboard go to Shipments → the shipment in question → check the error message.

B. "Customs declaration is required for international shipments via the USPS"

  • The customs info isn't being attached on an international shipment. Make sure the country codes on your store address and the customer address are correct.

C. State name is rejected

  • Shippo wants the short state code: CA (for California), NY, etc. The full name (California) is rejected. In Settings → Locations, enter the state as the short code.

D. Doesn't show up in the provider list

  • If your store currency isn't USD/CAD, you'll see "Not available in your store currency". Check Settings → General → Currency.
  • If your store address country isn't US/CA, you'll see "Doesn't ship from your shop location".

E. Webhook isn't arriving

  • In the Nevuto admin, go back to the Shippo settings and click Submit again — the webhook is re-registered.

13. Next steps

  • In the first week, reconcile the Shippo dashboard with Nevuto to make sure both stay consistent.
  • Add a margin to your shipping rates — Shippo's cheapest rate is your cost; charge the customer whatever makes sense for you.
  • If you use international services like USPS Priority Mail Express International, don't forget to add HS codes.

Help

Related articles