Switching from DIS1 or Delicom to Shipper Webservice (SWS)

This chapter describes how to smoothly switch from the old DPD DIS Webservices to the new Shipper Webservices. Please note that if you're a new Webservices user and never used our old DIS server, this chapter is irrelevant for you.

The URL's to which you send your XML calls are no longer the same as in DIS. The new URL's are described in each module of this Wiki separately.

In the XML calls, only a few details change.

In Login / Shipment / ParcelLifeCycle / ParcelShopFinder Service

You have to add to your <header> the <messagelanguage> field. This indicates which language SWS will reply in the event of an error. We in BeLux usually advise you just hardcode it to English by using the value: <messageLanguage>en_EN</messageLanguage>, however you are of course free to use Dutch (nl_NL) or French (fr_FR) instead, it doesn't really matter.

In Shipment Service specifically

The field <type></type> in the <recipient> segment is a new field. You can use value B if it's a business (a B2B shipment) or P if it's a private person (B2C shipment).
This is a field that will soon become mandatory in the DPD Group Geodata compliancy, however DIS 1.0 will not be updated to support it.

In Parcelshop Finder specifically

The ParcelshopFinder will return the PudoID in both ASCII format. Example:

<parcelShopId>666920289</parcelShopId>

This is the value that needs to be used when making a shipment to a parcel shop, as shown in the example:

<parcelShopDelivery>
   <parcelShopId>666920205</parcelShopId>                
          <parcelShopNotification>
                     <channel>3</channel> 
                     <value>+32#479123456</value>
                     <language>NL</language> 
           </parcelShopNotification>
</parcelShopDelivery>       

However, this could be problematic for customers using the fixed list of Parcelshop that's downloaded every day. This file only contains the parcelshopID in regular format (BE20289 for this example).

The first two letters of this ID are the shops's country code. This needs to be converted to ASCII so that you can use it in SWS.

666920205 is actually built up like this:

66 69 20205:

  • 66 = ASCII code of the letter B
  • 69 = ASCII code of the letter E
  • 20205 = the rest of the PudoID which remains unchanged.

It's advisable that the customer includes a conversion tool in his development that converts the two letters of the PudoID's country code to ASCII and uses the resulting, transformed PudoID in his shipments.

Simple Login example

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://dpd.com/common/service/types/LoginService/2.0">
   <soapenv:Header/>
   <soapenv:Body>
      <ns:getAuth>
         <delisId>KD*****</delisId>
         <password>*******</password>
         <messageLanguage>en_EN</messageLanguage>
      </ns:getAuth>
   </soapenv:Body>
</soapenv:Envelope>

 

Simple Shipment example

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://dpd.com/common/service/types/Authentication/2.0" xmlns:ns1="http://dpd.com/common/service/types/ShipmentService/3.3">
   <soapenv:Header>
      <ns:authentication>
         <delisId>KD*****</delisId>
         <authToken>****</authToken>
         <messageLanguage>en_EN</messageLanguage> 
      </ns:authentication>
   </soapenv:Header>
   <soapenv:Body>
      <ns1:storeOrders>
         <printOptions>
            <printerLanguage>PDF</printerLanguage>
            <paperFormat>A6</paperFormat>
         </printOptions>
         <order>
            <generalShipmentData>
               <sendingDepot>0530</sendingDepot>
               <product>CL</product> 
               <sender> 
                  <name1>Senders NV</name1>
                  <name2>Jan Janssens</name2>
                  <street>Egide Walschaertsstraat 20</street>
                  <country>BE</country>
                  <zipCode>2800</zipCode>
                  <city>Mechelen</city>
                  <type>B</type>
               </sender>
               <recipient> 
                  <name1>Receivers NV</name1>
                  <street>Teststraat 5</street>
                  <country>BE</country>
                  <zipCode>2800</zipCode>
                  <city>Mechelen</city>
                  <type>B</type> 
               </recipient>
            </generalShipmentData>            
            <parcels>
               <customerReferenceNumber1>Box 1234</customerReferenceNumber1> 
               <weight>340</weight> 
            </parcels>
            <productAndServiceData>
               <orderType>consignment</orderType> 
            </productAndServiceData>
         </order>
       </ns1:storeOrders>
   </soapenv:Body>
</soapenv:Envelope>

 

You will find full, more specific examples in the rest of our doc.dpd.be page. 

 

Submitted by CustomerIT on Tue, 07/30/2019 - 11:55