ShipmentService
Version: 3.5 · December 2025
The ShipmentService stores shipment orders and returns the corresponding parcel labels as PDF or ZPL.
Methods
| Method | Description |
|---|---|
storeOrders | Stores up to 30 shipments and creates corresponding shipment documents |
storeOrders
Action: http://dpd.com/common/serviceShipmentService/3.2/storeOrders
Input:
| Name | Element |
|---|---|
authentication (header) | types_authentication:authentication |
parameters | types:storeOrders |
Output:
| Name | Element |
|---|---|
return | types:storeOrdersResponse |
Faults:
| Name | Element |
|---|---|
AuthenticationFault | types_authentication:authenticationFault |
Examples
storeOrders — SOAP
<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.2">
<soapenv:Header>
<ns:authentication>
<delisId>{your delisId}</delisId>
<authToken>{your authToken}</authToken>
<messageLanguage>de_CH</messageLanguage>
</ns:authentication>
</soapenv:Header>
<soapenv:Body>
<ns1:storeOrders>
<printOptions>
<printerLanguage>PDF</printerLanguage>
<paperFormat>A6</paperFormat>
</printOptions>
<order>
<generalShipmentData>
<sendingDepot>{your sendingDepot}</sendingDepot>
<product>B2B</product>
<sender>
<name1>Sender Name</name1>
<street>Sender Street</street>
<country>CH</country>
<zipCode>8000</zipCode>
<city>Sender City</city>
</sender>
<recipient>
<name1>Recipient Name</name1>
<street>Recipient Street</street>
<country>CH</country>
<zipCode>8000</zipCode>
<city>Recipient City</city>
</recipient>
</generalShipmentData>
<parcels/>
<productAndServiceData>
<orderType>consignment</orderType>
</productAndServiceData>
</order>
</ns1:storeOrders>
</soapenv:Body>
</soapenv:Envelope>
storeOrders — REST
POST {baseUrl}/services/ShipmentService/storeOrders
Request body:
{
"authentication": {
"delisId": "{your delisId}",
"authToken": "{your authToken}",
"messageLanguage": "de_CH"
},
"storeOrders": {
"printOptions": {
"printerLanguage": "PDF",
"paperFormat": "A6"
},
"order": [{
"generalShipmentData": {
"sendingDepot": "0615",
"product": "B2B",
"sender": {
"name1": "Sender Name",
"street": "Sender Street",
"country": "CH",
"zipCode": "8000",
"city": "Sender City"
},
"recipient": {
"name1": "Recipient Name",
"street": "Recipient Street",
"country": "CH",
"zipCode": "8000",
"city": "Recipient City"
}
},
"parcels": [{}],
"productAndServiceData": {
"orderType": "consignment"
}
}]
}
}
Response (success):
{
"orderResult": {
"parcellabelsPDF": "{BASE64-Label}",
"shipmentResponses": [{
"identificationNumber": "",
"mpsId": "B2C0608000000174920200525",
"parcelInformation": [{
"parcelLabelNumber": "06080000001749",
"dpdReference": null
}],
"faults": []
}]
},
"status": { "type": "OK", "code": "200", "message": "valid" }
}
Response (error):
{
"orderResult": null,
"status": {
"type": "FaultCodeType",
"code": "ERR_DELICOM_TOKEN_EXPIRED",
"message": "token has expired"
}
}
Complex Types
Namespace: types
URL: http://dpd.com/common/service/types/ShipmentService/3.2
address
| Field | Type / Occurrence | Description |
|---|---|---|
name1 | xs:string / 1..1 · max 35 | Name of address owner |
name2 | xs:string / 0..1 · max 35 | Name 2 of address owner |
street | xs:string / 1..1 · max 35 | Street |
houseNo | xs:string / 0..1 · max 8 | House number |
street2 | xs:string / 0..1 · max 35 | Street 2 |
state | xs:string / 0..1 · length 2 | State (ISO 3166-2, e.g. ZH) |
country | xs:string / 1..1 · length 2 | Country (ISO 3166-1 alpha-2, e.g. CH) |
zipCode | xs:string / 1..1 · max 9 | Zip code |
city | xs:string / 1..1 · max 35 | City |
gln | xs:long / 0..1 | International location number |
customerNumber | xs:string / 0..1 · max 17 | Customer number |
contact | xs:string / 0..1 · max 35 | Contact person |
phone | xs:string / 0..1 · max 30 | Phone number |
fax | xs:string / 0..1 · max 30 | Fax number |
email | xs:string / 0..1 · max 50 | Email (max 40 for collection requests) |
comment | xs:string / 0..1 · max 70 | Comment |
iaccount | xs:string / 0..1 · max 50 | Account allocation / cost center |
cod (Cash on Delivery)
| Field | Type / Occurrence | Description |
|---|---|---|
amount | xs:long / 1..1 · max 350000 | COD amount as integer (e.g. 30000 = 300.00 CHF) |
currency | xs:string / 1..1 · length 3 | ISO 4217 currency code — always CHF |
inkasso | xs:int / 1..1 · 0 | Collection type: 0 = cash |
purpose | xsd:string / 0..1 · max 14 | Purpose of use |
bankCode | xs:string / 0..1 · max 25 | Bank code (requires bankName, bankAccountNumber, bankAccountHolder) |
bankName | xs:string / 0..1 · max 27 | Bank name |
bankAccountNumber | xs:string / 0..1 · max 25 | Bank account number |
bankAccountHolder | xs:string / 0..1 · max 30 | Account holder |
iban | xs:string / 0..1 · max 50 | IBAN |
bic | xs:string / 0..1 · max 50 | BIC |
generalShipmentData
| Field | Type / Occurrence | Description |
|---|---|---|
sendingDepot | xs:string / 1..1 · length 4 | Responsible depot (value from LoginService, with leading zeros, e.g. 0615) |
product | xs:string / 1..1 | Product code — see Services and Options |
sender | types:address / 1..1 | Sender address |
recipient | types:address / 1..1 | Recipient address |
identificationNumber | xs:string / 0..1 · max 999 | Unique alphanumeric key for the shipment |
mpsId | xs:string / 0..1 · length 25 | Shipment number (starts with MPS, EXP, or B2C) |
mpsCustomerReferenceNumber1–4 | xs:string / 0..1 · max 35 | Customer reference numbers |
mpsWeight | xs:long / 0..1 | Shipment weight in grams (10g units, no decimal) |
mpsExpectedSendingDate | xs:string / 0..1 | Expected sending date (YYYYMMDD) |
mpsExpectedSendingTime | xs:string / 0..1 | Expected sending time (HHMMSS) |
notification
| Field | Type / Occurrence | Description |
|---|---|---|
channel | xs:int / 1..1 | 1 = email, 3 = SMS |
value | xs:string / 1..1 · max 50 | Email address or phone number (international format, e.g. +41790000000) |
language | xs:string / 0..1 · length 2 | Notification language (ISO 3166-1 alpha-2, e.g. DE) |
parcel
| Field | Type / Occurrence | Description |
|---|---|---|
parcelLabelNumber | xs:string / 0..1 · length 14 | Parcel label number |
customerReferenceNumber1–4 | xs:string / 0..1 · max 35 | Parcel reference numbers |
weight | xs:int / 0..1 | Parcel weight in grams (10g units) |
volume | xs:int / 0..1 | Volume in cm³ (format LLLWWWHHH) |
swap | xs:boolean / 0..1 | Swap parcel flag (default: false) |
hazardousLimitedQuantities | xs:boolean / 0..1 | Limited quantities hazardous goods (default: false) |
content | xs:string / 0..1 · max 50 | Parcel content description |
cod | types:cod / 0..1 | COD data |
returns | xs:boolean / 0..1 | Return parcel flag (default: false) |
info1 | xs:string / 0..1 · max 29 | Info field 1 (collection request only, printed on label) |
info2 | xs:string / 0..1 · max 30 | Info field 2 (collection request only, printed on label) |
printOptions
| Field | Type / Occurrence | Description |
|---|---|---|
printerLanguage | xs:string / 1..1 · PDF or ZPL | Output format. Output is always base64 encoded |
paperFormat | xs:string / 1..1 · A4 or A6 | Paper format for label |
startPosition | types:startPosition / 0..1 | Start position on A4 paper |
printerResolution | xs:double / 1..1 · 150, 200/203, 300, 600 | ZPL only (ignored by PDF). Printer resolution in dpi. Must match the physical Zebra printhead density — other values are not supported. |
productAndServiceData
| Field | Type / Occurrence | Description |
|---|---|---|
orderType | xs:string / 1..1 | consignment, collection request order, or pickup information |
pickup | types:pickup / 0..1 | Pickup information |
parcelShopDelivery | types:parcelShopDelivery / 0..1 | Parcel shop delivery data |
predict | types:notification / 0..1 | Interactive notification (email or SMS only) |
exWorksDelivery | xs:boolean / 0..1 | Recipient pays the consignment (default: false) |
guarantee | xs:boolean / 0..1 | Guarantee for international shipments (products NP, E18 only) |
tyres | xs:boolean / 0..1 | Bulk tyres (product NP only) |
storeOrders
| Field | Type / Occurrence | Description |
|---|---|---|
printOptions | types:printOptions / 0..1 | Label print options |
order | types:shipmentServiceData / 1..30 | Shipment data (up to 30 per call) |
storeOrdersResponseType
| Field | Type / Occurrence | Description |
|---|---|---|
parcellabelsPDF | xs:base64Binary / 0..1 | Parcel label PDF or ZPL data (base64 encoded) |
shipmentResponses | types:shipmentResponse / 0..* | Response data per shipment order |
Namespace: types_authentication
URL: http://dpd.com/common/service/types/Authentication/2.0
authentication
| Field | Type / Occurrence | Description |
|---|---|---|
delisId | xsd:string / 1..1 · 8–10 chars | DELIS user ID |
authToken | xsd:string / 1..1 · 0–64 chars | Token from LoginService.getAuth |
messageLanguage | xsd:string / 1..1 · length 5 | de_CH, fr_CH, it_CH, or en_CH |
Simple Types
startPosition
| Value | Description |
|---|---|
UPPER_LEFT | Top-left position on A4 |
UPPER_RIGHT | Top-right position on A4 |
LOWER_LEFT | Bottom-left position on A4 |
LOWER_RIGHT | Bottom-right position on A4 |
Entry Points
| Environment | Protocol | URL |
|---|---|---|
| Stage | SOAP | https://shivah-st.dpd.ch/external/soap/services/ShipmentService |
| Live | SOAP | https://shivah.dpd.ch/external/soap/services/ShipmentService |
| Stage | REST | https://shivah-st.dpd.ch/external/rest/services/ShipmentService/storeOrders |
| Live | REST | https://shivah.dpd.ch/external/rest/services/ShipmentService/storeOrders |