Skip to content
This repository has been archived by the owner on Sep 21, 2023. It is now read-only.

Geschäftskundenversand-API 3.0 #64

Closed
xerc opened this issue Feb 2, 2019 · 15 comments
Closed

Geschäftskundenversand-API 3.0 #64

xerc opened this issue Feb 2, 2019 · 15 comments
Milestone

Comments

@xerc
Copy link

xerc commented Feb 2, 2019

@Petschko
Copy link
Owner

Petschko commented Feb 3, 2019

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?

@xerc
Copy link
Author

xerc commented Feb 4, 2019

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.

@xerc
Copy link
Author

xerc commented Feb 4, 2019

$ 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
  1. partial re-naming
  2. added <xs:element name="province"> and some maxLength changes
  3. mainly text changes?!

@Petschko
Copy link
Owner

Petschko commented Feb 4, 2019

Thank you so much for these informations, so I will take my time to read into that

@Petschko Petschko added this to the 1.1 milestone Feb 4, 2019
@Petschko Petschko self-assigned this Mar 2, 2019
@ericknyoto
Copy link

Whats the status of this ver 3?

@Petschko
Copy link
Owner

Its done i, just the documentation is not done for 3.x but you can use it (when using the dev branch)

@xerc
Copy link
Author

xerc commented Mar 17, 2020 via email

@kruegge82
Copy link

kruegge82 commented Apr 18, 2020

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

@Petschko
Copy link
Owner

Petschko commented Apr 18, 2020

Try changing the password
Besides make a new issue next time please

@kruegge82
Copy link

i did.... maybe because i used old version before?

@Petschko
Copy link
Owner

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

@MaximilianRadons
Copy link

MaximilianRadons commented Jul 7, 2020

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;

@Petschko
Copy link
Owner

Petschko commented Jul 9, 2020

@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

@Petschko Petschko closed this as completed Jul 9, 2020
@Petschko Petschko removed their assignment Jul 9, 2020
@yesong17
Copy link

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?

@Petschko
Copy link
Owner

@yesong17 Please open your very own issue instead of replying to closed ones. (Except they are related)

With this SDK you never have to click on any link, so I'm even unsure if your issue is related to this project

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

6 participants