Neu „Parameter refNo (Shipment reference number) must be between 8 and 35 characters long.“

lantelmegmbh

Aktives Mitglied
29. November 2016
13
4
Der Fehler kommt von der neuen DHL Versenden 4.0 API in JTL.
Die Meldung bedeutet:


„Parameter refNo (Shipment reference number) must be between 8 and 35 characters long.“

Die Referenznummer (refNo) ist in JTL meistens die Auftragsnummer / Bestellnummer.
Diese ist bei dir vermutlich zu kurz (unter 8 Zeichen).


Beispiel​


Wenn deine Auftragsnummer z. B. ist:



AUF123



hat sie nur 6 Zeichen → DHL 4.0 lehnt das ab.




Lösung in JTL​


Gehe in:



Versand → Versandarten → DHL 4.0



Dann:



Versanddatenexport / Referenznummer



Dort musst du die Referenznummer verlängern.


Zum Beispiel statt nur:



{{ Auftrag.Auftragsnummer }}



verwende:



Auftrag-{{ Auftrag.Auftragsnummer }}
 

FablixFashion

Aktives Mitglied
10. Februar 2023
1
0
hi,

ich habe es genauso angepasst, immer noch die gleiche Fehlermeldung. Egal ob ich Auftrag-{{ Auftrag.Auftragsnummer }} Auftrag oder externe Auftragsnummer benutze.
 

ChristopherW

Aktives Mitglied
24. Juni 2016
37
8
{{ Auftrag.Auftragsnummer }}

So hat es bei mir funktioniert.

Normal hatten wir unter der Referenz die Artikelnummer des Lieferscheins aufgeführt, dies funktioniert aber auch leider nicht mehr..
 
  • Gefällt mir
Reaktionen: Udo mau

CT_PE

Neues Mitglied
23. Februar 2026
2
1
Hallo,

wir haben hier eher das Problem das wir hier eher zu viele Zeichen haben weil wir den String nutzen:
{{ Auftrag.ExterneAuftragsnummer }}, {{ Auftrag.Auftragsnummer }}
Kann man an der Stelle evtl mit RegEx arbeiten um die Referenz ggf. auf hart auf 35 Stellen einzukürzen? Haben da schon etwas herumexperimentiert, aber noch keine saubere lauffähige Lösung gefunden.
Hat von euch jemand evtl. einen heißen Tip?

Danke!:thumbsup:
 

unblack

Sehr aktives Mitglied
23. November 2007
458
44
Hallo,

wir haben hier eher das Problem das wir hier eher zu viele Zeichen haben weil wir den String nutzen:
{{ Auftrag.ExterneAuftragsnummer }}, {{ Auftrag.Auftragsnummer }}
Kann man an der Stelle evtl mit RegEx arbeiten um die Referenz ggf. auf hart auf 35 Stellen einzukürzen? Haben da schon etwas herumexperimentiert, aber noch keine saubere lauffähige Lösung gefunden.
Hat von euch jemand evtl. einen heißen Tip?

Danke!:thumbsup:

Nicht mit Regex, aber mit Liquid:

{{ Auftrag.ExterneAuftragsnummer | truncate: 35, "" }}


ggf. vorher die beiden Variablen zusammenfassen.
 
  • Gefällt mir
Reaktionen: CT_PE

CT_PE

Neues Mitglied
23. Februar 2026
2
1
Nicht mit Regex, aber mit Liquid:

{{ Auftrag.ExterneAuftragsnummer | truncate: 35, "" }}


ggf. vorher die beiden Variablen zusammenfassen.
Danke für die schnelle Antwort!
Wollte eben meinen Kollegen darauf ansetzen, der war aber schon weiter, was ich nicht gewusst hatte.
Laut unserem Ticket bei JTL, ist an der Stelle kein Liquid verfügbar und es sind nur Variablen möglich!
Nur für alle die vor ähnlichen Aufgaben stehen.
 
  • Gefällt mir
Reaktionen: unblack

unblack

Sehr aktives Mitglied
23. November 2007
458
44
Danke für die schnelle Antwort!
Wollte eben meinen Kollegen darauf ansetzen, der war aber schon weiter, was ich nicht gewusst hatte.
Laut unserem Ticket bei JTL, ist an der Stelle kein Liquid verfügbar und es sind nur Variablen möglich!
Nur für alle die vor ähnlichen Aufgaben stehen.

Ok. Hatte den Fall noch nicht.

Evtl. workaround: per workflow die gewünschte Referenznummer zusammenbasteln und in ein eigenes Feld schreiben und das dann als Referenznummer übergeben. Das sollte gehen.
 
  • Gefällt mir
Reaktionen: CT_PE

Udo mau

Aktives Mitglied
14. Mai 2020
8
0
Der Fehler kommt von der neuen DHL Versenden 4.0 API in JTL.
Die Meldung bedeutet:




Die Referenznummer (refNo) ist in JTL meistens die Auftragsnummer / Bestellnummer.
Diese ist bei dir vermutlich zu kurz (unter 8 Zeichen).


Beispiel​


Wenn deine Auftragsnummer z. B. ist:



AUF123



hat sie nur 6 Zeichen → DHL 4.0 lehnt das ab.




Lösung in JTL​


Gehe in:



Versand → Versandarten → DHL 4.0



Dann:



Versanddatenexport / Referenznummer



Dort musst du die Referenznummer verlängern.


Zum Beispiel statt nur:



{{ Auftrag.Auftragsnummer }}



verwende:



Auftrag-{{ Auftrag.Auftragsnummer }}
Hallo

Kurze frage kann man das irgendwie so machen das Auf dem Etikett wieder das Artikel Nummer steht ?

MfG
 

patoc

Sehr aktives Mitglied
20. Juni 2017
184
96
Hallo zusammen,

wir haben das Thema, dass seit dem Wechsel auf die 1.11.11 (und auf DHL 4.0), immer wieder - aber nicht systematisch - der bekannte Fehler "[Provider] Parameter refNo (Shipment reference number) must be between 8 and 35 characters long." aufscheint.

Wenn am Packtisch dann die EMAI-ADRESSE (nicht die Referenz!) gelöscht wird, wird das DHL-Label gedruckt. Wenn man dann im DHL-Geschäftskundenportal nachsieht, fehlt die Referenz meistens (aber auch nicht immer) komplett.

Unsere eigentliche Referenz ({{ Auftrag.Rechnung.Rechnungsnummer }} / {{ Auftrag.Rechnung.Auftrag.Auftragsnummer }}) ist garantiert immer > 8 und < 35 Zeichen. Warum auch immer wird hier aber anscheinend die eMail-Adresse auf die Referenz gemappt, und die ist bei Amazon-eMail-Adresse zu 99% > 35 Zeichen. Befragt von Gemini & Co ist hier die Rede davon, dass JTL hier einen Mapping-Fehler hat. Ich Versuche nun zu erzwingen, dass die von unser vorgegeben Referenz (und nicht die eMail-Adresse) verwendet wird, indem ich die Referenz auf Referenz und "Kostenstelle" aufteile und einen Begriff voranstelle:

"Referenznummer:" RECHNUNG: {{ Auftrag.Rechnung.Rechnungsnummer }}
"Kostenstelle:" AUFTRAG: {{ Auftrag.Rechnung.Auftrag.Auftragsnummer }}

Ob das hilft, sehe ich morgen, wenn der Versand wieder anläuft.

Aber kennt jemand diesen Fehler? Wenn es wirklich (mal wieder) ein JTL-Mapping-Fehler ist, weiß jemand ob JTL das schon auf dem Schirm hat?

LG und Dank
 

Bloomtech

Aktives Mitglied
28. August 2015
10
3
Wir testen gerade, nachdem der Fehler bei uns auch auftritt, aber nicht zuverlässig reproduzierbar. Wir verwenden {{ Auftrag.Rechnung.Rechnungsnummer }} und halten es für möglich, dass zu dem Zeitpunkt die Rechnungnummer noch nicht besteht, es also einen kurzen Zeitraum gibt, in dem die Variable noch nicht gesetzt ist. Dafür würde sprechen, dass ein händisches Anfordern gleich danach klappt. Falls dem so ist, müsste die WAWI prüfen ob eine Rechnungnummer besteht (bzw. globaler gesehen die verwendete Variable einen Inhalt hat) und erst dann die Übermittlung starten, oder eine Verzögerungszeit einbauen. In jedem Fall sollte das Voranstellen einer 8-stelligen Konstante das Verhalten umgehen, außer die Abfrage des Felds selbst geschieht (unlogischerweise) nachdem die Anfrage an DHL gerichtet wurde.
 

BeniF

Sehr aktives Mitglied
27. September 2018
437
150
Wir testen gerade, nachdem der Fehler bei uns auch auftritt, aber nicht zuverlässig reproduzierbar. Wir verwenden {{ Auftrag.Rechnung.Rechnungsnummer }} und halten es für möglich, dass zu dem Zeitpunkt die Rechnungnummer noch nicht besteht, es also einen kurzen Zeitraum gibt, in dem die Variable noch nicht gesetzt ist. Dafür würde sprechen, dass ein händisches Anfordern gleich danach klappt. Falls dem so ist, müsste die WAWI prüfen ob eine Rechnungnummer besteht (bzw. globaler gesehen die verwendete Variable einen Inhalt hat) und erst dann die Übermittlung starten, oder eine Verzögerungszeit einbauen. In jedem Fall sollte das Voranstellen einer 8-stelligen Konstante das Verhalten umgehen, außer die Abfrage des Felds selbst geschieht (unlogischerweise) nachdem die Anfrage an DHL gerichtet wurde.
Wir haben das selbe Problem. Es wird sporadisch ein Fehleretikett gedruckt - geht man dann nochmals auf Versanddatenexport, wird das Label umgehend gedruckt....
 

mvh

Sehr aktives Mitglied
26. Oktober 2011
1.135
440
Moin. Die Rechnung wird vor Versanddatenexport erstellt, sogar noch vor Lieferschein, aber lediglich in der Datenbank-Ebene. Die DotLiquid und Workflows Daten werden aber nicht immer zeitgleich aktualisiert. Wir nehmen Auftrags-/Kundennummer als Refereznummer, die sind immer vorhanden.