Skip to content

ShipmentOrderRequestBuilder::setRecipientAddress(): Argument #3 ($postalCode) must be of type string, null given #11

Description

@mkleisti

Ich schon wieder :)

Für die Länder, welche nicht am Postleitzahl System teilnehmen, wie zB Irland oder Städte wie Dubai.

Laut DHL Support, muss hier NULL übermittelt werden oder consignee.postalCode komplett weggelassen werden.
Getestet mit JSON & cURL, an einer Adresse in Dubai ohne ZipCode und kann es bestätigten, das DHL dann validiert mit TRUE und man auch ein Etikett erhält.

Wenn ich jedoch ein $requestBuilder->setRecipientAddress( ... postalCode: (!empty($liefer['lie_plz']))?$liefer['lie_plz']:NULL, ... ); mache und als Testadresse die gleich verwende, wie die in meinem JSON.
Dann erhalte ich diese Fehlermeldung, da ein String verlangt wird.

PHP Fatal error: Uncaught TypeError: Dhl\Sdk\ParcelDe\Shipping\RequestBuilder\ShipmentOrderRequestBuilder::setRecipientAddress(): Argument #3 ($postalCode) must be of type string, null given, called in

Aber bei einem leeren String im postalCode: wie bei streetNumber: kommt von DHL ein

0 => string 'In der Sendung trat mindestens ein harter Fehler auf.' (length=53)
1 => string 'consignee.postalCode' (length=20)
2 => string 'Der Parameter postalCode muss eine valide Postleitzahl nach UPU sein.' (length=69)
3 => string 'consignee.postalCode' (length=20)
4 => string 'Der Parameter postalCode muss zwischen 3 und 10 Zeichen lang sein.' (length=66)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions