Geschäftskundenversand-API 3.0
xerc opened this issue · 15 comments
Hello,
please write something to your issue. About the first link, I can't look at their forum, because they messed it up and the secured connection fails always in their forums
So what do you want?
The new version (3.0) of the Business Customer Shipping API will be available on the DHL Developer Portal as of Friday, February 1, 2019. You may continue using the current version (2.2) of the Business Customer Shipping API if you are not interested in using the 'retail outlet routing' service.
Here is an overview of the new features found in Version 3.0 of the Business Customer Shipping API:
- Supports the new 'retail outlet routing' service (starting Feb. 2019)
- Supports ZEBRA programming language (ZPL) for thermal printers
- Sender's reference, cost center, label formats and user groups are transferred in request
- Return shipment number is transferred in response
Do I have to switch to Version 3.0?
Registered customers who are already using Version 2.2 and wish to use the above-mentioned functionalities must switch to the new version (3.0). Existing customers who are not interested in the new functionalities may continue using Version 2.2.
Must new customers use Version 3.0?
Yes. Exceptions will be made, however, to those who are currently in the process of implementing Version 2.2, or who have already connected to Version 2.2, and who would like to implement another operation or application.
$ diff -w geschaeftskundenversand-api-2.2/geschaeftskundenversand-api-2.2.wsdl geschaeftskundenversand-api-3.0/geschaeftskundenversand-api-3.0.wsdl
$ diff -w geschaeftskundenversand-api-2.2/geschaeftskundenversand-api-2.2-schema-cis_base.xsd geschaeftskundenversand-api-3.0/geschaeftskundenversand-api-3.0-schema-cis_base.xsd
$ diff -w geschaeftskundenversand-api-2.2/geschaeftskundenversand-api-2.2-schema-bcs_base.xsd geschaeftskundenversand-api-3.0/geschaeftskundenversand-api-3.0-schema-bcs_base.xsd
- partial re-naming
- added <xs:element name="province"> and some maxLength changes
- mainly text changes?!
Thank you so much for these informations, so I will take my time to read into that
Whats the status of this ver 3?
Its done i, just the documentation is not done for 3.x but you can use it (when using the dev branch)
Hi, i now testing version 3 but i get security violation, on entwickler.dhl.de i read needing SOAPAction urn:createShipmentOrder in header but i cannot see in xml request.
SOAPAction: "urn:createShipmentOrder"[\r][\n]"
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://dhl.de/webservice/cisbase" xmlns:ns2="http://dhl.de/webservices/businesscustomershipping/3.0"><SOAP-ENV:Header><ns1:Authentification><ns1:user>XXX</ns1:user><ns1:signature>xxx</ns1:signature></ns1:Authentification></SOAP-ENV:Header>
//unser and signature removed
using PHP 7.4
Try changing the password
Besides make a new issue next time please
i did.... maybe because i used old version before?
hm maybe, please create a new project in your DHL-Developer account and use that data, maybe your current API-User is still locked to version 2
I just tryed to get Labels with Version 3.0, it worked, but the shipmentNumber was set to null.
I had a look into the XML response, the shipmentNumber is not contained in the labelData anymore, in Version 3.0 it is outside of the LabelData and also contained at first Level in CreationState.
Thought i´d share it, just in case it is a general issue.
Version 3.0:
<CreationState>
<sequenceNumber>1</sequenceNumber>
<shipmentNumber>xxxxxxxxxxxxxxxxxx</shipmentNumber>
<LabelData>
<Status>
<statusCode>0</statusCode>
<statusText>ok</statusText>
<statusMessage>Der Webservice wurde ohne Fehler ausgeführt.</statusMessage>
</Status>
<labelUrl>xxxx</labelUrl>
</LabelData>
</CreationState>
Version 2.0:
<CreationState>
<sequenceNumber>1</sequenceNumber>
<LabelData>
<Status>
<statusCode>0</statusCode>
<statusText>ok</statusText>
<statusMessage>Der Webservice wurde ohne Fehler ausgeführt.</statusMessage>
</Status>
<cis:shipmentNumber>xxxxxxxxxxxxxxxxxx</cis:shipmentNumber>
<labelUrl>xxxx</labelUrl>
</LabelData>
</CreationState>
I managed to get the shippingNumber with this code:
$xml = simplexml_load_string($dhl->getLastDhlXMLResponse());
$xml->registerXPathNamespace('bcs', 'http://dhl.de/webservices/businesscustomershipping/3.0');
$shipmentNumber = (string) $xml->xpath('//bcs:CreateShipmentOrderResponse')[0]->CreationState->shipmentNumber;
@xerc @kruegge82 @ericknyoto @MaxRadons
I've seen there is even a newer version 3.1
I think I dont have the energy to support this anymore, feel free to fork this repo and make your own one. Besides I'm annoyed to login there to see the doku and always have to deal with their rotating password madness
You can go on DHLs nerves that you want PHP examples, I think when they mean to update it so often lately, I'm out
Hello, I'm docking with dhl.de, and I encountered a problem in the authentication step, [authentication on the customer integration gateway (CIG) for calls from the DHL APIs]. I click the authentication link, enter the account password, and the return is "cig.dhl.de refused to visit". Can you give me some suggestions?