Intro
Shipment Creation (all products)
-
History
Version 3.4.0
– getAvailableProductsAndServices method added
Version 3.3.0
– New fields and descriptions in the address type
– New fault code in the faultCodeType
– Changed description of the mpsWeight in the GeneralShipmentData type
– New and deleted fields in the international type
– New complex type internationalLine
– Changed decription of weight and new fields in the parcel type
Version 3.2.0
– New field extraPickup in pickup
– New field startPosition in printOptions
Version 3.1.0
– New field tyres in productAndServiceData
– Field customerNumber in sender/recipient address and field invoicePosition in international must be numeric.
– Parcelblock is optional, for only one parcel with no additional data.
– Return parcel label in format A7 support.
– Return parcel label receipt support.
– Variable sender address support.
– Parcel with 0kg weight handle as classic parcel.
Version 3.0.0
– New field countrySpecificService in productAndServiceData
– Removed field paperFormat in storeOrders
– Introduced new element printOptions in storeOrders with paperformat, printertype and printer options -
Methods
Following methods are available for the service ShipmentService-Public_3_4
Method name Description storeOrders Stores up to 30 shipments and creates corresponding shipment documents. getAvailableProductsAndServices Get available products and services Method: storeOrders
Description
Stores up to 30 shipments and creates corresponding shipment documents.
Sample request:
<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.4"> <soapenv:Header> <ns:authentication> <delisId><your delisId></delisId> <authToken><your authToken></authToken> <messageLanguage>de_DE</messageLanguage> </ns:authentication> </soapenv:Header> <soapenv:Body> <ns1:storeOrders> <printOptions> <printerLanguage>PDF</printerLanguage> <paperFormat>A4</paperFormat> </printOptions> <order> <generalShipmentData> <identificationNumber>77777</identificationNumber> <sendingDepot>0163</sendingDepot> <product>CL</product> <mpsCompleteDelivery>0</mpsCompleteDelivery> <sender> <name1>Abholer1</name1> <street>Strasse 1</street> <country>DE</country> <zipCode>11111</zipCode> <city>Ort1</city> <customerNumber>12345679</customerNumber> <type>P</type> <street2>Strasse 2</street2> </sender> <recipient> <name1>Test-Empfaenger</name1> <street>Test-Strasse</street> <state>BY</state> <country>DE</country> <zipCode>63741</zipCode> <city>Aschaffenburg</city> <type>P</type> <referenceNumber>12345 ref</referenceNumber> </recipient> </generalShipmentData> <parcels> <parcelLabelNumber></parcelLabelNumber> </parcels> <productAndServiceData> <orderType>consignment</orderType> </productAndServiceData> </order> </ns1:storeOrders> </soapenv:Body> </soapenv:Envelope>
Action http://dpd.com/common/service/ShipmentService/3.4/storeOrders
Input
The input for method storeOrders is as follows:
Name Element authentication * types_authentication:authentication parameters types:storeOrders * header parameter
Output
The output for method storeOrders is as follows:
Name Element return types:storeOrdersResponse Faults
The defined faults for method storeOrders are as follows:
Name Element AuthenticationFault types_authentication:authenticationFault Method: getAvailableProductsAndServices
Description
Get available products and services
Sample request:
<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.4"> <soapenv:Header> <ns:authentication> <delisId>apicust</delisId> <authToken>b4oHWfAI3vKf47nvS1ag3mN0wJtc7JRRyPZdV4a80Q6clwdn7W5ZR4GtC1cU</authToken> <messageLanguage>en_DE</messageLanguage> </ns:authentication> </soapenv:Header> <soapenv:Body> <ns1:getAvailableProductsAndServices> </ns1:getAvailableProductsAndServices> </soapenv:Body> </soapenv:Envelope>
Action
http://dpd.com/common/service/ShipmentService/3.4/getAvailableProductsAndServices
Input
The input for method getAvailableProductsAndServices is as follows:
Name Element authentication * types_authentication:authentication * header parameter
Output
The output for method getAvailableProductsAndServices is as follows:
Name Element return types:getAvailableProductsAndServicesResponse -
Complex Types
Namespace: types
URL: http://dpd.com/common/service/types/ShipmentService/3.4
Namespace: types
Complex Type: address
Field name Data type / Occurrence /
Range
Description name1 xs:string / 1 .. 1 /
maxLength: 50
Name of address owner. For dangerous goods the maximum length is 50, otherwise always 35. If name2 is empty and length of name1 exceed above maximum length, then value of name1 is split between name1 and name2 fields. name2 xs:string / 0 .. 1 /
maxLength: 35
Name 2 of address owner. street xs:string / 1 .. 1 /
maxLength: 50
Street of address owner. For dangerous goods the maximum length is 50, otherwise always 35. If street2 is empty and length of street exceed above maximum length, then value of street is split between street and street2 fields. houseNo xs:string / 0 .. 1 /
maxLength: 8
House number of address owner. Maximum length is 8. state xs:string / 0 .. 1 / length: 2
State of address owner in ISO 3166-2 code (e.g. BY = Bayern). country xs:string / 1 .. 1 / length: 2
Country of address owner in ISO 3166-1 alpha-2 format (e.g. ‘DE’). zipCode xs:string / 1 .. 1 /
maxLength: 9
Zip code of address owner. city xs:string / 1 .. 1 /
maxLength: 50
City/town of address owner. For dangerous goods the maximum length is 50, otherwise always 35. gln xs:long / 0 .. 1 /
maxInclusive: 99999999
99999
International location number of address owner. customerNumber xs:string / 0 .. 1 /
maxLength: 17
Customer number of address owner. Maximum length is 17 for consignment and pickup information, 11 for collection request. Mandatory for sender’s address. type xs:string / 1..1 / maxLength: 1 B = business P = private
contact xs:string / 0 .. 1 /
maxLength: 35
Contact person of address owner. phone xs:string / 0 .. 1 /
maxLength: 30
Phone number of address owner. Mandatory if phone is the chosen notification channel. No required data format. Either phone or email is mandatory in the complex type international.
fax xs:string / 0 .. 1 /
maxLength: 30
Fax number of address owner. No required data format. email xs:string / 0 .. 1 /
maxLength: 50
Email address of address owner. For collection requests the maximum length is 40, otherwise always 50. Either phone or email is mandatory in the complex type international.
comment xs:string / 0 .. 1 /
maxLength: 70
Comment on address owner. iaccount xs:string / 0 .. 1 /
maxLength: 50
Account allocation or cost center (for VTG) of invoice data for consignments. eoriNumber xs:string / 0 .. 1 /
maxLength: 20
If type = B: either eori or vatNumber is mandatory vatNumber xs:string / 0 .. 1 /
maxLength: 20
If type = B: either eori or vatNumber is mandatory idDocType xs:string / 0 .. 1 /
maxLength: 1
Type of identification document: P: PASSPORT Number
C : CNPJ (ou CPF) Number (Brésil)
if type = B this field becomes mandatory (dependency of the custom export regime) applicable or not according export custom clearance of origin country
idDocNumber xs:string / 0 .. 1 /
maxLength: 20
Identification document number webSite xs:string / 0 .. 1 /
maxLength: 255
For sender: Selling website, it becomes mandatory if field type is B and the sender is a Ecommercant street2 xs: string / 0 .. 1 /
maxLength: 35
2nd address line of owner referenceNumber xs: string / 0 .. 1 /
maxLength: 35
Reference number of owner Namespace: types
Complex Type: cod
Description Bundles cash on delivery data.
Field name Data type / Occurrence /
Range
Description amount xs:long / 1 .. 1 /
maxInclusive: 99999999
99
COD amount in the currency of the destination country. The amount is specified as integer value e.g. 300.00 becomes 30000. Please note the national ceilings for cod in the corresponding relations.
currency xs:string / 1 .. 1 / length: 3
ISO 4217 alpha-3 currency code (destination country). inkasso xs:int / 1 .. 1 /
0
1
Defines collection type. Possible values are: 0 = cash
1 = crossed cheque
purpose xs:string / 0 .. 1 /
maxLength: 14
Purpose of use. bankCode xs:string / 0 .. 1 /
maxLength: 25
Bank code. If this value is filled, parameters for bankName, bankAccountNumber and bankAccountHolder must also be filled.
bankName xs:string / 0 .. 1 /
maxLength: 27
Bank name. If this value is filled, parameters for bankCode, bankAccountNumber and bankAccountHolder must also be filled.
bankAccountNumber xs:string / 0 .. 1 /
maxLength: 25
Bank account number. If this value is filled, parameters for bankCode, bankName and bankAccountHolder must also be filled. bankAccountHolder xs:string / 0 .. 1 /
maxLength: 30
Account holder. If this value is filled, parameters for bankCode, bankName and bankAccountNumber must also be filled.
iban xs:string / 0 .. 1 /
maxLength: 50
International bank account number . If this value is filled, parameters for bankCode, bankName, bankAccountNumber and bankAccountHolder must also be filled.
bic xs:string / 0 .. 1 /
maxLength: 50
Bank identifier code. If this value is filled, parameters for bankCode, bankName, bankAccountNumber and bankAccountHolder must also be filled.
Namespace: types
Complex Type: delivery
Description Bundles delivery data.
Field name Data type / Occurrence /
Range
Description day xs:string / 0 .. 1 /
maxLength: 20
Allowed delivery days in the week (0 = Sunday, 1 = Monday etc.). Comma separated list of possible delivery days (e.g. “2,3,4,5”).
dateFrom xs:int / 0 .. 1 /
maxInclusive: 99999999
Fixed delivery from date – format YYYYMMDD, e.g. 20080213. dateTo xs:int / 0 .. 1 /
maxInclusive: 99999999
Fixed delivery to date – format YYYYMMDD, e.g. 20080213. timeFrom xs:int / 0 .. 1 /
maxInclusive: 2400
Time from which the consignee is available – format hhmm (local time receipient country), e.g. 1400 or 0830. timeTo xs:int / 0 .. 1 /
maxInclusive: 2400
Time until the consignee is available – format hhmm (local time receipient country), e.g. 1600 or 0930. Namespace: types
Complex Type: faultCodeType
Field name Data type / Occurrence /
Range
Description faultCode xs:string / 1 .. 1 / DATABASE_8 – delete fails on database level during rollback after some other error
DATABASE_21 – order is to be inserted in database, but has already a database id
DATABASE_22 – order is to be committed after inserting, but there is no database id for update given
DATABASE_24 – deletion is necessary because of some other error, but no database id for record is given
MPSEXP_1 – parcel label number is already in use ROUTING_1 – no route could be found for depot and feature
ROUTING_2 – invalid input data
ROUTING_3 – the connection to the database failed
ROUTING_4 – an internal failure occurs
ROUTING_5 – no depot could be found
ROUTING_6 – no pickup date was given
ROUTING_7 – internal extension rule error
ROUTING_8 – malformed zip code
ROUTING_9 – missing country code
ROUTING_10 – missing routing place
ROUTING_11 – missing service code
ROUTING_12 – routing place error ROUTING_13 – sending date error
ROUTING_14 – service code error
ROUTING_15 – invalid relation of service codes
ROUTING_16 – unknown country code
ROUTING_17 – unknown destination depot
ROUTING_18 – unknown zip code
ROUTING_19 – unknown routing place
ROUTING_20 – unknown service code
ROUTING_21 – invalid service code
ROUTING_21 – parcel is labelled as return parcel but returns is not possible
ROUTING_22 – missing allow
ROUTING_23 – missing routing place or destination depot
CUSTOMS_1 – customs data are not complete
message xs:string / 1 .. 1 / Message with detailed information for the fault (e.g. incorrect field).
Namespace: types
Complex Type: generalShipmentData
Description
Bundles general shipment data.
Field name Data type / Occurrence /
Range
Description mpsId xs:string / 0 .. 1 /
length: 25
The shipment number for consignment data. The shipment number is only accepted if the parcel label number is allocated by customer. It starts with one of “MPS”, “EXP” or “B2C”, the last eight ciphers are the date in format yyyyMMdd.
cUser xs:string / 0 .. 1 /
maxLength: 10
Not used, do not include in the call. User ID of the person who made the entry. mpsCustomerReference Number1 xs:string / 0 .. 1 /
maxLength: 50
Consignment customer reference number 1 (maximal length 35), also customer reference number for collection request orders (maximal length 50).
Shown on label and included in electronic data, but not shown on label for Collection Requests.mpsCustomerReference Number2 xs:string / 0 .. 1 /
maxLength: 35
Consignment customer reference number 2.
Shown on label and included in electronic data, but not shown on label for Collection Requests.mpsCustomerReference Number3 xs:string / 0 .. 1 /
maxLength: 35
Consignment customer reference number 3. Not shown on any label, but included in electronic data. mpsCustomerReference Number4 xs:string / 0 .. 1 /
maxLength: 35
Consignment customer reference number 4.
Not shown on any label, but included in electronic data.identificationNumber xs:string / 0 .. 1 /
maxLength: 999
Not used, do not include in the call. Serves as unique alphanumeric key of the shipment used by customer. Can obtain up to 999 ciphers. sendingDepot xs:string / 1 .. 1 / length: 4
Sending depot for consignment, ordering depot for collection request, customer’s depot for pickup information or creating/sending depot for dangerous goods. 4 alphanumeric places, including leading zeros, e.g. 0163. product xs:string / 1 .. 1 /
CL
E830
E10
E12
E18
IE2
PL
PL+
MAIL
Selection of product, exactly one per shipment, mandatory for consignment data. Possible values are: CL = DPD CLASSIC
E830 = DPD 8:30
E10 = DPD 10:00
E12 = DPD 12:00
E18 = DPD 18:00
IE2 = DPD EXPRESS
PL = DPD PARCELLetter
PL+ = DPD PARCELLetterPlus
MAIL = DPD International Mail
mpsCompleteDelivery xs:boolean / 0 .. 1 /
Not used, do not include in the call. Defines if the shipment should be sent as complete delivery. Mandatory for COD. Default value is false. mpsCompleteDelivery Label xs:boolean / 0 .. 1 /
Not used, do not include in the call. Defines if the label for complete delivery is printed for pickup. Default value is false. mpsVolume xs:long / 0 .. 1 /
maxInclusive: 999999999
Not used, do not include in the call. Volume per consignment in cm3 (without decimal places). mpsWeight xs:long / 0 .. 1 /
maxInclusive: 99999999
Not used, do not include in the call. Shipment weight in dekagrams units without decimal delimiter (e.g. 300 equals 3kg). Sum of weight (complex type parcel) equal mpsWeight
Sum of grossWeight (complex type international) equal mpsWeight
mpsExpectedSending Date xs:string / 0 .. 1 / pattern: [2][0-9]{3}([0][0-9
]|[1][0-2])(0[1-9]|[12][0-9]|
3[01])
Not used, do not include in the call. Date when the shipment is expected to be transferred to the system. Format is YYYYMMDD. mpsExpectedSending Time xs:string / 0 .. 1 / pattern: (([1][0-9]|[2][0-3] |[0][0-9])([0-5][0-9])([0-5][
0-9]))|([0-9]([0-5][0-9])([0-
5][0-9]))
Time when the shipment is expected to be transferred to the system. Format is HHMMSS. sender types:address / 1 .. 1 /
Consignment sender’s address, collection request customer’s address or pickup information customer’s address. recipient types:address / 1 .. 1 /
Address of the recipient. For parcel shop delivery address of the real recipient. Namespace: types
Complex Type: hazardous
Description Bundles hazardous materials data.
Field name Data type / Occurrence /
Range
Description identificationUnNo xs:string / 1 .. 1 / length: 4
Defines UN number of hazardous substance. UN numbers range between 0004 and 9004. identificationClass xs:string / 1 .. 1 /
maxLength: 6
Defines class of hazardous substance. Possible values range from 1 to 9. Subclasses are specified as position after decimal point (e.g. class 1 is “explosives”, class 1.6 is “extremely insensitive explosives”).
classificationCode xs:string / 0 .. 1 /
maxLength: 5
Defines classification code of hazardous substance. packingGroup xs:string / 0 .. 1 /
maxLength: 5
Defines packing group of hazardous substance. Common values are “I”, “II” or “III”. packingCode xs:string / 1 .. 1 /
0A
0A1
0A2
Defines packing code. Possible values are: 0A = thin sheet packing
0A1 = thin sheet packing with non removable head
0A2 = thin sheet packing with removable head 1A = steel barrel
1A 1A1
1A2
1B
1B1
1B2
1H
1H1
1H2
3A
3A1
3A2
3B
3B1
3B2
3H
3H1
3H2
4A
4B
4D
4G
4H
4H1
4H2
5H
5M
6H
1A1 = steel barrel with non removable head 1A2 = steel barrel with removable head
1B = aluminium barrel
1B1 = aluminium barrel with non removable head
1B2 = aluminium barrel with removable head
1H = plastics barrel
1H1 = plastics barrel with non removable head
1H2 = plastics barrel with removable head
3A = steel canister
3A1 = steel canister with non removable head
3A2 = steel canister with removable head
3B = aluminium canister,
3B1 = aluminium canister with non removable head
3B2 = aluminium canister with removable head
3H = plastics canister,
3H1 = plastics canister with non removable head
3H2 = plastics canister with removable head
4A = steel crates
4B = aluminium crate
4D = plywood crate
4G = cardboard crate
4H = plastics crate
4H1 = plastics crate plastics expanded
4H2 = plastics crate plastics solid
5H = plastics bags
5M = paper bags
6H = combination packings
description xs:string / 1 .. 1 /
maxLength: 160
Description of hazardous substance (redundant). subsidiaryRisk xs:string / 0 .. 1 /
maxLength: 10
Subsidiary risk of hazardous substance (redundant). tunnelRestrictionCode xs:string / 0 .. 1 /
A
B
C
D
E
Tunnel restriction code of hazardous substance (redundant). Possible values are “A”, “B”, “C”, “D” or “E”. hazardousWeight xs:decimal / 1 .. 1 / totalDigits: 6 fractionDigits: 2
Weight of hazardous substance with 4 places before decimal point and 2 decimal places (with separator). netWeight xs:decimal / 0 .. 1 / totalDigits: 6 fractionDigits: 2
Net weight of hazardous substance with 4 places before decimal point and 2 decimal places (with separator). factor xs:int / 1 .. 1 /
maxInclusive: 999
Factor of hazardous substance (redundant ). 999 means unlimited. notOtherwiseSpecified xs:string / 0 .. 1 /
maxLength: 150
A not otherwise specified text which is mandatory for some substances. Namespace: types
Complex Type: higherInsurance
Field name Data type / Occurrence /
Range
Description amount xs:long / 1 .. 1 /
maxInclusive: 99999999
99
Increased insurance value with 2 decimal point positions without separators. currency xs:string / 1 .. 1 / length: 3
Currency code for increased insurance in format ISO 4217 alpha 3. Namespace: types
Complex Type: international
Field name Data type / Occurrence /
Range
Description parcelType xs:boolean / 1 .. 1 /
Defines if the type of parcel is “documents” (allowed for air based destination only). Default value is false. customsAmount xs:long / 1 .. 1 /
maxInclusive: 99999999
9999
Defines the customs amount in total without decimal separator (e.g. 14.000 = 14000). For documents it is 0. customsCurrency xs:string / 1 .. 1 / length: 3
Currency code in ISO 4217 alpha-3 format. customsAmountEx xs:long / 1 .. 1 /
maxInclusive: 99999999
9999
Defines the converted customs amount in total without decimal separator (e.g. 14.000 = 14000). For documents it is 0. customsCurrencyEx xs:string / 1 .. 1 / length: 3
Currency code in ISO 4217 alpha-3 format. Currency for conversion (destination country). clearanceCleared xs:string / 1 .. 1 / length: 1
(N)o, (F)ree,
(E)xport Cleared,
(T)ransit cleared,
(I)mport Cleared,
(H)ybrid.
prealertStatus xs:string / 1 .. 1 / length: 3
S03 = Data captured by sending depot S04 = Data are available for export gateway depots
S05 = Pre-alert provided (1st linehaul)
S06 = Return to sending depot by export gateway
S07 = Deactivated
S08 =HV import customs cleared
S09 = transit via road (T1)
S13 = Pre-alert provided (2nd linehaul)
S14 = Returned by import gateway (1st linehaul)
S15 = LV import customs cleared
S16 = Returns to sending country (2nd linehaul)
exportReason xs:string / 1 .. 1 / length: 2
Reason for export : 01: sale
02: return/replacement
03: gift
customsTerms xs:string / 1 .. 1 /
01
02
03
05
06
Declares the customs terms. Possible values are: 01 = DAP, cleared
02 = DDP, delivered duty paid (incl. duties and excl.
Taxes
03 = DDP, delivered duty paid (incl duties and taxes)
05 = ex works (EXW)
06 = DAP
customsContent xs:string / 1 .. 1 /
maxLength: 35
Describes the content of the parcel. customsPaper xs:string / 0 .. 1 /
maxLength: 20
Lists the accompanying documents. The values are to be combined without separator (e.g. “ABG”). Following values are defined:
A = commercial invoice
B = pro forma invoice
C = export declaration
D = EUR1
E = EUR2 F = ATR
G = delivery note
H = third party billing
I = T1 document
customsEnclosure xs:boolean / 0 .. 1 /
Defines if the accompanying documents are at the parcel or not. Default value is false. customsInvoice xs:string / 1 .. 1 /
maxLength: 20
Defines the invoice number. customsInvoiceDate xs:int / 1 .. 1 /
maxInclusive: 99999999
Defines the invoice date (format YYYYMMDD). customsAmountParcel xs:long / 0 .. 1 /
maxInclusive: 99999999
9999
Parcel value with two decimal places without separator. linehaul xs:string / 0 .. 1 /
AI
RO
Defines mode of line haul. Possible values are “AI” for air and “RO” for road. shipMrn xs:string / 0 .. 1 /
maxLength: 20
Movement reference number of the electronical export declaration. collectiveCustoms Clearance xs:boolean / 0 .. 1 /
Flag for determining collective customs clearance. Default value is false. comment1 xs:string / 0 .. 1 /
maxLength: 70
Comment. comment2 xs:string / 0 .. 1 /
maxLength: 70
Second comment. commercialInvoice ConsigneeVatNumber
xs:string / 0 .. 1 /
maxLength: 20
Defines the commercial invoice consignee VAT number. commercialInvoice Consignee types:address / 1 .. 1 /
Contains address data of commercial invoice consignee. commercialInvoice Consignor types:address / 1 .. 1 /
Contains address data of commercial invoice consignor. commercialInvoiceLine types:internationalLine / 1 .. * / Contains invoice line data Complex Type: internationalLine
Field name Data type / Occurrence /
Range
Description customsTarif xs:string / 1 .. 1 /
maxLength: 10
The customs tarif number. receiverCustomsTarif xs:string / 1 .. 1 /
maxLength: 8
The customs tarif number of the destination country. productCode xs:string / 0 .. 1 /
maxLength: 255
Internal customer product code – mandatory for destination country UK content xs:string / 1 .. 1 /
maxLength: 200
Nature of goods grossWeight xs:int / 1 .. 1 /
maxInclusive: 99999999
Total weight of the article including packaging, in grams. This is not the unit weight. Weight in dekagrams units without
decimal delimiter (e.g. 300 equals 3kg)
itemsNumber xs:int / 1 .. 1 /
maxInclusive: 9999
Quantity of items amountLine xs:long / 1 .. 1 /
maxInclusive: 99999999
9999
The customs amount of the article without decimal separator (e.g. 14.000 = 14000). customsOrigin xs:string / 1 .. 1 / length: 2
Origin country in ISO 3166-1 alpha-2 format (e.g. ‘DE’). invoicePosition xs:string / 0 .. 1 /
maxLength: 6
The invoice position. Namespace: types
Complex Type: notification
Field name Data type / Occurrence /
Range
Description channel xs:int / 1 .. 1 /
1
2
3
Defines channel of notification. Possible values are:
1 = email
2 = telephone
3 = SMS
value xs:string / 1 .. 1 /
maxLength: 50
Value for the chosen channel, i.e. the phone number or the e-mail address. No required data format for SMS and phone. language xs:string / 0 .. 1 / length: 2
Language of the notification in ISO 3166-1 alpha-2 format (e.g. ‘DE’). Namespace: types Complex Type: parcel
Field name Data type / Occurrence /
Range
Description parcelLabelNumber xs:string / 0 .. 1 /
minLength: 11 maxLength: 14
Parcel label number. Number range and validity are checked. Length can be 11 or 14. customerReference Number1 xs:string / 0 .. 1 /
maxLength: 35
Parcel customer reference number 1. customerReference Number2 xs:string / 0 .. 1 /
maxLength: 35
Parcel customer reference number 2. customerReference Number3 xs:string / 0 .. 1 /
maxLength: 35
Parcel customer reference number 3. customerReference Number4 xs:string / 0 .. 1 /
maxLength: 35
Parcel customer reference number 4. swap xs:boolean / 0 .. 1 /
Defines if the parcel is a consignment swap parcel. Default value is false. volume xs:int / 0 .. 1 /
maxInclusive: 999999999
Volume of the single parcel (length/width/height in format LLLWWWHHH) in cm without separators. weight xs:int / 0 .. 1 /
maxInclusive: 99999999
Parcel weight in dekagrams units without decimal delimiter (e.g. 300 equals 3kg). Consignement allows 8-digit values, collection requests 7-digit and dangerous goods 6-digit.
hazardousLimited Quantities xs:boolean / 0 .. 1 /
Defines if the parcel is a limited quantities hazardous goods parcel. Default value is false. higherInsurance types:higherInsurance / 0 .. 1 /
Defines if the parcel has increased insurance value. Default value is false. content xs:string / 0 .. 1 /
maxLength: 50
Content of the parcel. Mandatory for increased insurance. For collection requests maximum length is 50, for consignment it is 35. addService xs:int / 0 .. 1 /
1
2
3
Additional service. Possible values are:
1 = delivery information
2 = documents return
3 = written permission to deposit goods by sender
messageNumber xs:int / 0 .. 1 /
maxInclusive: 99999
Message number for consignment shipper information. Default value is 1. function xs:string / 0 .. 1 / LOCKDZB
LOCKASG
LOCKEVM
LOCKSHOP
LOCKTV
Blockable functions, possible values are: LOCKDZB = delivery to a third party with notification of delivery
LOCKASG = written permission to deposit goods
LOCKEVM = delivery with non-recurring authority
LOCKSHOP = parcel shop
LOCKTV = appointment
parameter xs:string / 0 .. 1 /
maxLength: 300
Free text for blockable functions. cod types:cod / 0 .. 1 /
Contains COD data for COD consignments. international types:international / 0 .. 1 / Contains data for consignments across customs frontiers. hazardous types:hazardous / 0 .. 4 /
Contains packing and substance data for dangerous goods. printInfo1OnParcelLabel xs:boolean / 0 .. 1 /
Determines if content of parameter info1 will be added on the label of a collection request parcel. Default value is false.
info1 xs:string / 0 .. 1 /
maxLength: 29
Information text 1. Will be printed on the parcel label if the flag printInfo1OnParcellabel is set to true. info2 xs:string / 0 .. 1 /
maxLength: 30
Information text 2. Will not be printed on the parcel label. returns xs:boolean / 0 .. 1 /
Defines if parcel is a return parcel. The return parcel must always be next in order to the corresponding outbound parcel. Default value is false. customsTransportCost xs:long / 0 .. 1 /
maxInclusive: 99999999
999999
Custom transport cost without decimal separator (e.g. 14.000 = 14000). Mandatory for the destination country UK customsTransportCostCurrency xs:string / 0 .. 1 / length: 3
Currency code in ISO 4217 alpha-3 format. Mandatory for the destination country UK
Namespace: types
Complex Type: parcelInformationType
Field name Data type / Occurrence /
Range
Description parcelLabelNumber xs:string / 0 .. 1 / The parcel label number of the corresponding parcel. dpdReference xs:string / 0 .. 1 / The DPD reference for this parcel. Namespace: types
Complex Type: parcelShopDelivery
Field name Data type / Occurrence /
Range
Description parcelShopId xs:long / 1 .. 1 / Parcel shop ID for parcel shop delivery. Can be obtained from parcel shop finder. Assumes that parameter type of
personal delivery is filled with a value from 3 to 5, which means parcel shop delivery. Mandatory in this case.
parcelShopNotification types:notification / 1 .. 1 / Contains data for personal notification for parcel shop consignments. Namespace: types
Complex Type: personalDelivery
Description Bundles personal delivery data.
Field name Data type / Occurrence /
Range
Description type xs:int / 1 .. 1 /
minInclusive: 1 maxInclusive: 5
Defines type of personal delivery. Possible values are: 1 = department delivery (without personal identification)
2 = personal delivery with personal identification (IDCheck)
3 = personal delivery without personal identification at drop point (e.g. parcel shop)
4 = personal delivery with personal identification at drop point (e.g. parcel shop)
5 = personal delivery with personal identification at drop point plus ID-Check (e.g. parcel shop)
For parcel shop delivery the parcel shop id must be declared in productAndServiceData. It can be obtained from parcel shop finder.
floor xs:string / 0 .. 1 /
maxLength: 30
Floor where the personal delivery shall take place. This field is only used for department delivery. building xs:string / 0 .. 1 /
maxLength: 30
Building where the personal delivery shall take place. This field is only used for department delivery (type 1). department xs:string / 0 .. 1 /
maxLength: 30
Department where the personal delivery shall take place. This field is only used for department delivery (type 1). name xs:string / 0 .. 1 /
maxLength: 35
Name of the person authorised to accept the consignment. This field is only used for delivery with ID-Check (types 2 and 4). phone xs:string / 0 .. 1 /
maxLength: 20
Telephone number of the person authorised to accept the consignment. This field is only used for delivery with ID-Check (types 2 and 4). No required data format. personId xs:string / 0 .. 1 /
maxLength: 35
Personal identification number of the person authorised to accept the consignment. This field is only used for delivery with ID-Check (types 2 and 4). Namespace: types
Complex Type: pickup
Description Bundles pickup data.
Field name Data type / Occurrence /
Range
Description tour xs:int / 0 .. 1 /
maxInclusive: 999
Tour number (between 000 and 999). quantity xs:int / 1 .. 1 /
maxInclusive: 99999
Quantity of pickup parcels. Mandatory for consignment. date xs:int / 1 .. 1 /
maxInclusive: 99999999
Pickup date in consignments and collection requests. The collection day for advice customers. The from date for pickup information. Format is YYYYMMDD.
It can also be used as pickup date for collection requests, then format is YYMMDD. Mandatory for consignment. day xs:int / 1 .. 1 /
maxInclusive: 6
Pickup day of week for consignments and pickup information. Allowed values are 0..6 (0=Sunday, 1=Monday, etc.). Mandatory for consignment. fromTime1 xs:int / 0 .. 1 /
maxInclusive: 2400
From time 1 for consignments and pickup information. Format is hhmm. Mandatory for consignment. toTime1 xs:int / 0 .. 1 /
maxInclusive: 2400
Until time 1 for consignments and pickup information. Format is hhmm. Mandatory for consignment. fromTime2 xs:int / 0 .. 1 /
maxInclusive: 2400
From time 2 for consignments and pickup information. Format is hhmm. toTime2 xs:int / 0 .. 1 /
maxInclusive: 2400
Until time 2 for consignments and pickup information. Format is hhmm. extraPickup xs:boolean / 0 .. 1 /
True if extra pickup is requested. collectionRequest Address types:address / 0 .. 1 /
Contains pickup address information for consignments and collection requests. Mandatory for consignment. Namespace: types
Complex Type: printOptions
Description: Options how to return the parcel labels
Field name Data type / Occurrence /
Range
Description printerLanguage xs:string / 1 .. 1 /
PDF
ZPL
The language in which the parcel labels should be returned. PDF as file output, ZPL for direct printing. In any case the output is base64 encoded.
paperFormat xs:string / 1 .. 1 /
A4
A6
A7
Declares the paper format for parcel label print, either “A4” or “A6”. For direct printing the format has to be set to “A6”. “A7” only for return labels, other type are not allowed. printer types:printer / 0 .. 1 / Should not be used/included! Information about the printer. Enabled if direct printing is selected. startPosition types:startPosition / 0 .. 1 / Start position for print on A4 paper. Complex Type: printer
Description: Information about the printer, if direct printing is selected.
Field name Data type / Occurrence /
Range
Description manufacturer xs:string / 0 .. 1 / The printer’s manufacturer. At the moment only for informational purposes. model xs:string / 0 .. 1 / The printer’s model. At the moment only for informational purposes. revision xs:string / 0 .. 1 / The printer’s revision / version. At the moment only for informational purposes. offsetX xs:decimal / 1 .. 1 /
The horizontal offset in mm for the direct printer file (Not used with normal PDF output). offsetY xs:decimal / 1 .. 1 /
The vertical offset in mm for the direct printer file (Not used with normal PDF output). connectionType xs:string / 1 .. 1 / SERIAL
PARALLEL
The connection type of the printer: serial or parallel connection. barcodeCapable2D xs:boolean / 1 .. 1 /
If the printer can print AZTEC barcodes, set this flag to true. Complex Type: proactiveNotification
Field name Data type / Occurrence /
Range
Description channel xs:int / 1 .. 1 /
1
2
3
6
7
Defines type of proactive notification. Possible values are:
1 = email
2 = telephone
3 = SMS
6 = FAX
7 = postcard
value xs:string / 1 .. 1 /
maxLength: 50
Data for proactive notification, e.g. telephone number, email address, etc. The data format for the proactive message types SMS, phone and FAX is as follows:
+international country number#phone number Examples:
+49#1725673423
+49#01725673423
rule xs:int / 1 .. 1 /
maxInclusive: 31
Rule for which events a notification is sent. Each event has a certain value. By adding the different values it is possible to build combinations of events, e.g. notification for pick-up and delivery is 5. The different values are:
1 = pick-up
2 = non-delivery
4 = delivery
8 = inbound
16 = out for delivery
language xs:string / 1 .. 1 / length: 2
Language of the proactive notification in ISO-3166-1 alpha-2 format (e.g. ‘DE’). Complex Type: productAndServiceData
Field name Data type / Occurrence /
Range
Description orderType xs:string / 1 .. 1 /
consignment
collection request order pickup information
Defines the shipment type. Possible values are: consignment
collection request order pickup information
saturdayDelivery xs:boolean / 0 .. 1 /
Defines if saturday delivery is demanded. Only selectable for product “E12”. Default value is false. exWorksDelivery xs:boolean / 0 .. 1 /
Defines if the recipient has to pay the consignment. Default value is false. guarantee xs:boolean / 0 .. 1 /
Set to true if an international shipment shall use Guarantee, only for products NP and E18 in international parcels tyres xs:boolean / 0 .. 1 /
Set to true if this consignment contains bulk tyres, only for product NP. personalDelivery types:personalDelivery / 0 .. 1 /
Contains information for personal delivery. pickup types:pickup / 0 .. 1 /
Contains information for pickup consignments, pickup address for collection requests or details for pickup information. parcelShopDelivery types:parcelShopDelivery /
0 .. 1 /
Contains the necessary information, if a parcel shop delivery is intended. predict types:notification / 0 .. 1 / Contains data for interactive notification for consignments. Only channel e-mail and SMS is allowed. personalDelivery Notification types:notification / 0 .. 1 / Contains data for personal delivery notification for consignments. proactiveNotification types:proactive Notification /
0 .. 5 /
Contains information of proactive notification for consignments. delivery types:delivery / 0 .. 1 / Contains special delivery data for consignments. invoiceAddress types:address / 0 .. 1 /
Contains data about invoice recipient if it differs for consignment. countrySpecificService xs:string / 0 .. 1 / In some relations a specific service code can be set which overwrites the feature selection. Namespace: types
Complex Type: shipmentResponse
Description Bundles shipment response data.
Field name Data type / Occurrence /
Range
Description identificationNumber xs:string / 0 .. 1 / Serves as unique alphanumeric key of the shipment used by customer. mpsId xs:string / 0 .. 1 /
maxLength: 25
The shipment number for consignment data. If ordertype is pickup information, the shipment number is an internal database id, which is necessary for technical support requests at DPD. parcelInformation types:parcelInformation Type /
0 .. * /
Contains information about the single parcels. faults types:faultCodeType / 0 .. 3 /
Contains information about errors during shipment order processing. Namespace: types
Complex Type: shipmentServiceData
Description Bundles shipment service data.
Field name Data type / Occurrence /
Range
Description generalShipmentData types:generalShipment Data /
1 .. 1 /
Contains general data for a shipment. parcels types:parcel / 0 .. * /
Contains information for the parcels. productAndServiceData types:productAndService Data /
1 .. 1 /
Contains special data for a shipment. Namespace: types
Complex Type: storeOrders
Field name Data type / Occurrence /
Range
Description printOptions types:printOptions / printOptions types:printOptions / printOptions types:printOptions / order types:shipmentService Data /
.. 30 /
Contains the whole data for the shipments. Namespace: types
Complex Type: storeOrdersResponse
Field name Data type / Occurrence /
Range
Description orderResult types:storeOrders ResponseType /
1 .. 1 /
Contains return object. Namespace: types
Complex Type: storeOrdersResponseType
Field name Data type / Occurrence /
Range
Description parcellabelsPDF xs:base64Binary / 0 .. 1 /
Contains parcel label PDF data in bytes. shipmentResponses types:shipmentResponse /
0 .. * /
Contains response data for every shipment order. Namespace: types
Complex Type: product
Description Product type will contain details of the product.
Field name Data type / Occurrence /
Range
Description name xs:string / 0 .. 1 /
Full name of the product description xs:string / 0 .. 1 /
Contains description of the product. May be multiline and contain descriptions for several languages (detailed specification of formatting will be provided). code xs:string / 0 .. 1 /
Code of the product to be used in order creation. Additional services will have it filled too, but they can’t be used in product attribute of the storeOrders method. Namespace: types
Complex Type: getAvailableProductsAndServicesResponse
Field name Data type / Occurrence /
Range
Description products types:product / 0 .. /
Contains description of each available products. additionalServices types:product / 0 .. /
Contains description of each available additional services. Namespace: types
Complex Type: getAvailableProductsAndServices
Field name Data type / Occurrence /
Range
Description Namespace: types_authentication
URL: http://dpd.com/common/service/types/Authentication/2.0
Namespace: types_authentication
Anonymous Complex Type of Element: authentication
Description The data structure for authentication data.
Field name Data type / Occurrence /
Range
Description delisId xsd:string / 1 .. 1 /
minLength: 8 maxLength: 10
The delis user id for authentication. authToken xsd:string / 1 .. 1 /
minLength: 0 maxLength: 64
The token for authentication. Field authToken of Login, as a result of
Method “getAuth” of LoginService.
messageLanguage xsd:string / 1 .. 1 /
minLength: 5 maxLength: 5
The language (Java format) for messages. “de_DE” for german messages.
“en_US” for english messages.
Namespace: types_authentication
Anonymous Complex Type of Element: authenticationFault
Description: The data structure for authentication errors.
Field name Data type / Occurrence /
Range
Description errorCode xsd:string / 1 .. 1 / The error code. Valid codes: NoAccessAuthenticationFault=-1
NoRightsAuthenticationFault=-2
errorMessage xsd:string / 1 .. 1 /
minLength: 1 maxLength: 255
The error message text. -
Simple Types
Namespace: types
URL: http://dpd.com/common/service/types/ShipmentService/3.4
Namespace: types
Simple Type: startPosition
Field name Data type / Occurrence /
Range
Description startPosition xs:string / /
UPPER_LEFT
UPPER_RIGHT
LOWER_LEFT
LOWER_RIGHT
Start positions -
Elements
Namespace: types
URL: http://dpd.com/common/service/types/ShipmentService/3.4
Namespace: types
Element: storeOrders
Field name Data type / Occurrence /
Range
Description storeOrders types:storeOrders / 1 .. 1 /
See types:storeOrders Namespace: types
Element: storeOrdersResponse
Field name Data type / Occurrence /
Range
Description storeOrdersResponse types:storeOrders Response /
.. 1 /
See types:storeOrdersResponse Namespace: types
Element: getAvailableProductsAndServices
Field name Data type / Occurrence /
Range
Description getAvailableProductsAndServices types: getAvailableProductsAndServices/ 1 .. 1 /
See types: getAvailableProductsAndServices Namespace: types
Element: getAvailableProductsAndServicesResponse
Field name Data type / Occurrence /
Range
Description getAvailableProductsAndServicesResponse types: getAvailableProductsAndServicesResponse/ .. 1 /
See types: getAvailableProductsAndServicesResponse Namespace: types_authentication
URL: http://dpd.com/common/service/types/Authentication/2.0
Namespace: types_authentication
Element: authentication
Anonymous Complex Type types_authentication:authentication
Namespace: types_authentication
Element: authenticationFault
Anonymous Complex Type types_authentication:authenticationFault
-
Endpoints
Stage
The Stage ShipmentService can be reached under:
https://shipperadmintest.dpd.be/PublicApi/soap/WSDL/ShipmentServiceV34.wsdl
https://shipperadmintest.dpd.be/PublicApi/soap/services/ShipmentService/V3_4/Live
The Live ShipmentService can be reached under:
https://wsshipper.dpd.be/soap/WSDL/ShipmentServiceV33.wsdl
https://wsshipper.dpd.be/soap/services/ShipmentService/V3_3