This is the flagship automation: paid orders push to ShipStation automatically, you (or your warehouse) print labels, and tracking flows back to the originating channel and the customer — with zero manual data entry.
ℹ️ Before you start: you’ll need a ShipStation account and its API key and secret (ShipStation → Settings → Account → API Settings → API Keys). Have at least one paid test order available so you can verify end to end.
How the integration works
Order paid ─▶ Flow ─▶ ShipStation ─▶ Label printed ─▶ Tracking
(any (push) (fulfillment) │
channel) ▼
▲ pushed back to
└───── channel + customer ◀──────── the channel
- Outbound: paid orders are pushed to ShipStation as shippable orders.
- Inbound: when a shipment is created in ShipStation, its tracking number flows back, marking the order shipped and notifying the buyer.
1. Connect ShipStation
- Open the integration — go to Flows → ShipStation (or Settings → Integrations → ShipStation) and click Connect.
- Enter your API credentials — paste the API key and API secret from ShipStation’s API Settings.
- Confirm the connection — the status changes to Connected and a test call verifies your credentials.
2. Map your stores (recommended)
ShipStation organizes orders into stores. Mapping each sales channel to a ShipStation store keeps Amazon, eBay, and Walmart orders cleanly separated and lets tracking route back to the correct channel.
- In the ShipStation integration, open Store mapping.
- For each connected channel, pick the ShipStation store that should receive its orders.
- Save. Unmapped channels fall back to a default store.
💡 Tip: If you only sell on one channel, a single default store is fine — revisit mapping when you add a second channel.
3. Build the auto-fulfillment flow
- Create a new flow — go to Flows → New flow (or start from the ShipStation template).
- Set the trigger — choose Order paid so orders push the moment payment is confirmed.
- Add conditions (optional) — filter by channel or value, or leave empty to push every paid order.
- Add the action — add Push to ShipStation. Optionally add a notify action.
- Run it in shadow mode and check the run history.
- Go live — set the flow to Active.
on: order.paid
when:
channel: amazon # optional — omit to push all channels
do:
- shipstation.push
- notify.send:
to: fulfillment-team
4. Verify end to end
- Trigger a real (paid) order.
- Confirm it appears in the correct ShipStation store within a minute or two.
- Create a label in ShipStation as usual.
- Back in the platform, the order should flip to Shipped with the tracking number, and the channel/customer should be notified.
✅ When tracking appears on the order automatically after you print a label, the loop is closed — every future paid order now flows through without a human.
Inbound dead-letters
If ShipStation sends an update the platform can’t match to an order, it’s captured as a dead-letter in the ShipStation Activity tab rather than dropped. Review it periodically — usually a store-mapping or SKU issue.
Troubleshooting
| Symptom | Likely cause | Fix |
|---|---|---|
| Orders not appearing in ShipStation | Flow inactive or still in shadow | Set the flow to Active |
| Orders in the wrong store | Store mapping missing/incorrect | Fix store mapping |
| Tracking not syncing back | Inbound update couldn’t match the order | Check the Activity tab for dead-letters |
| “Connection failed” | Wrong/revoked API keys | Re-enter credentials from ShipStation API Settings |