Tre pakker med hver sin fragtlabel

Torsdag kl. 13:47. Pakkestation. Scanner pakken. WMS kalder GLS API. Fejl: "Invalid service code". Årsag: gls_droppoint i stedet for gls_private_droppoint. Mapping-fejl. Pakken kan ikke sendes. 47 pakker klar. Alle samme fejl. Cut-off om 1 time. Opdager fejlen. Retter mapping. Genbestiller alle 47 labels. Kl. 14:52. Cut-off nået, lige akkurat.

Fire ud af ti netbutikker (41 procent) bruger mindst fire fragtleverandører, og hver fjerde bruger mindst fem. Kun hver ottende klarer sig med én. Antallet er omtrent fordoblet siden 2017.

Kilde: Dansk Erhverv, Logistikanalyse 2025. Webanalyse blandt danske netbutikker og omnichannel-virksomheder, gennemført 20. november til 10. december 2025. 1.459 skemaer udsendt, 98 svar på dette spørgsmål.

Hvad er fragtintegration?

Fragtintegration er WMS'ets forbindelse til fragtmænds systemer. Når en pakke er klar til afsendelse, kalder WMS fragtmand-API'et og:

  1. Sender pakkedata (modtageradresse, vægt, dimensioner, valgt fragtprodukt)
  2. Modtager tracking-nummer og forsendelsesID
  3. Henter fragtlabel som PDF eller ZPL (til labelprinter)
  4. Printer label og klæber på pakken

Alt sker typisk inden for 1-3 sekunder fra scanning af pakken.

Fragtmænd og deres integration

GLS

GLS er den mest brugte fragtmand i dansk e-handel. GLS-API'et er relativt simpelt, men metode-nøglerne er kritiske.

Metode-nøgler (skal matche præcist):

  • gls_private_droppoint, levering til GLS-pakkeshop/droppoint
  • gls_business_delivery, erhvervslevering direkte til virksomhed
  • gls_flex_delivery, privat hjemmelevering med fleksibel levering

Nøglerne matches mod den leveringsmetode, kunden valgte i webshoppen. Fejl i mapping giver enten forkert fragtprodukt eller mislykket label-generering.

PostNord

PostNord kræver et ekstra registrerings-element sammenlignet med GLS: MISKOS-nummer.

MISKOS-nummer er et 9-cifret kundenummer hos PostNord. Det er din virksomheds PostNord-kundeidentifikator og skal inkluderes i hvert API-kald. Uden det afviser PostNord API-kaldet. MISKOS-nummeret udleveres af PostNord ved kundeaftaleindgåelse.

POST /rest/logistics/order/v1/{MISKOS}
Authorization: Bearer {access_token}
{
  "shipment": {
    "sender": {...},
    "receiver": {...},
    "consignor": {"quickId": "{MISKOS}"},
    "parcels": [{"weight": {"value": 1500, "unit": "GRM"}}]
  }
}

Bring

Bring (PostNord Norge) bruges primært til norske leverancer. Bring-integration har ét specifikt krav til telefonnummer-format, der giver overraskende mange fejl.

Telefonnummer-format: Bring kræver at modtagerens telefonnummer starter med +47 efterfulgt af enten 9 cifre (mobilnummer) eller 4 cifre (fastnetnummer). Format: +479XXXXXXXX (mobil).

Et telefonnummer uden +47-præfiks, med spaces, med bindestreger eller med forkert cifre-antal afvises af Bring API.

👉 Har du tekniske integrationsproblemer? Se SmartPacks integrationer

Hvad koster fragtintegration-fejl?

FejltypeHyppighedKoster per dagEfter 14 dage
Forkert GLS metode-nøgle10% af ordrer = 50/dag50 × 85 kr. fragttillæg + 2.000 kr. kundeservice = 6.250 kr.87.500 kr.
MISKOS-nummer mangler (PostNord)Total stop4 timers nedetid, ca. 10.000 kr. per episodeOpdages samme dag
Bring telefonnummer-format fejler15% af ordrer til Norge = 8/dag800 kr. manuel korrektion + 1.600 kr. forsinkelse = 2.400 kr.33.600 kr.

Regnet på 350 kr. per fejlbehæftet ordre og 300 kr. per arbejdstime. De 14 dage er et bud på, hvor længe en stille fejl typisk når at køre, før nogen opdager den. Opdager I den på to dage, koster den en syvendedel.

Fragtvalg og mapping

Flowet fra kundeklik til fragtlabel:

  1. Kunden vælger "GLS Pakkeshop" i Shopify-checkout
  2. Shopify gemmer valget som shipping_line med metodenøgle
  3. WMS modtager ordren og mapper metodenøgle til intern fragtprofil
  4. Intern fragtprofil mapper til GLS API-produktkode: gls_private_droppoint
  5. WMS sender bookingforespørgsel til GLS API
  6. GLS returnerer tracking-nummer og label-PDF
  7. Label printes på pakkestationen

Fejl opstår typisk i trin 3-4: mapping mellem webshop-metodenøgle og WMS-fragtprofil.

Typiske fejl

  1. Forkert GLS metode-nøgle. gls_droppoint i stedet for gls_private_droppoint. Brug altid de præcise nøgler fra GLS integration-dokumentation.
  2. MISKOS-nummer mangler for PostNord. API-kald sendes uden MISKOS. PostNord returnerer 403 Forbidden eller 400 Bad Request.
  3. Bring telefonnummer-format fejler. Kunden har indtastet "20 12 34 56". WMS sender +4720123456, 8 cifre efter +47. Bring afviser. Implementér telefonnummer-validering og -formatering i ordreimport.

Sådan gør du det rigtigt

  1. Test alle fragtprodukter explicit: GLS privat, GLS erhverv, PostNord hjemmelevering, PostNord pakkeboks, Bring, test hvert enkelt med en testorder inden go-live.
  2. Gem fragtmand-svar som log: Track-nummer, booking-ID og evt. fejlbesked gemmes pr. ordre.
  3. Implementér fragtmand-fallback: Hvis primær fragtmand API er nede, er der alternativ procedure (manuel bestilling).

Tjekliste

  • Er alle GLS metode-nøgler konfigureret og testet?
  • Er PostNord MISKOS-nummer konfigureret i WMS?
  • Valideres Bring-telefonnumre til +47-format inden afsendelse?
  • Er fragtmand-svar (track-nummer) gemt pr. ordre?
  • Er alle fragtprodukter testet med rigtige testadresser?

SmartPack understøttelse

SmartPack understøtter GLS, PostNord og Bring med præ-konfigurerede integrationer. GLS metode-nøgler konfigureres i fragtopsætning og matches mod webshop-leveringsmetoder. PostNord MISKOS-nummer konfigureres i fragtprofilen. Bring-telefonnummervalidering er built-in. Fragtlabels genereres og printes automatisk ved pakning. Tracking-numre gemmes på ordreniveau og videresendes til webshop ved fulfillment.