The first release of the PostNord integration — tracking for parcels carried by PostNord, the postal operator for Sweden, Denmark, Norway and Finland.
No account and no API key are needed: you enter the tracking code yourself, just like on PostNord's own tracking page. One backend covers all four countries — the tracking code is all it needs.
New features
- Per-parcel sensors with the canonical status, PostNord's own status text, the estimated time of arrival, the pickup point when a parcel routes to one, the weight, and a link to the tracking page.
- Summary sensors — incoming parcels, next delivery, recently delivered, and outgoing parcels — each carrying the full parcel list as an attribute so one dashboard card can render everything.
- A deliveries calendar — a read-only view of every parcel with an estimated delivery, at no extra request.
- Events and device triggers for parcel registered, status changed, delivered and delivery-time changed, so your automations need no polling of their own.
postnord.track_parcel/postnord.untrack_parcelservices, so a dashboard button or an e-mail automation can add a parcel without opening the integration options.- Opt-in status history — the full event timeline per parcel, at no extra request since PostNord ships it in the same response.
- A manual refresh button and a diagnostic sensor showing when PostNord was last polled successfully.
- A configurable polling interval (15 minutes to 4 hours; default 30).
Known limitation — and how you can help
This first release is built from a real, redacted PostNord response, so the response shape and status mapping are in good shape — but two things can only be confirmed against live parcels, which is why it ships as 0.9.0 rather than 1.0.0:
- A status we do not map yet makes the parcel report
unknownrather than guessing, and writes one line to your log with a ready-made issue link. Opening that issue with the logged line is all it takes to complete the mapping — it says nothing about you or your parcel. - If a real parcel's payload is shaped differently from our sample (a field we expected is missing), the integration logs the same kind of one-shot warning with the field name only — never any of its contents — so we can confirm the mapping without ever seeing your data.