Aller au contenu principal

ShipmentService

Version : 3.5 · Décembre 2025

Le ShipmentService enregistre les ordres d'expédition et renvoie les étiquettes de colis correspondantes au format PDF ou ZPL.


Méthodes​

MéthodeDescription
storeOrdersEnregistre jusqu'à 30 envois et crée les documents d'expédition correspondants

storeOrders​

Action : http://dpd.com/common/serviceShipmentService/3.5/storeOrders

Entrée :

NomÉlément
authentication (en-tête)types_authentication:authentication
parameterstypes:storeOrders

Sortie :

NomÉlément
returntypes:storeOrdersResponse

Erreurs :

NomÉlément
AuthenticationFaulttypes_authentication:authenticationFault

Exemples​

storeOrders — SOAP​

POST {baseUrl}/services/ShipmentService

Corps de la requête :

<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.5">
<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>

Réponse (succès) :

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soap:Body>
<storeOrdersResponse xmlns="http://dpd.com/common/service/types/ShipmentService/3.5">
<orderResult>
<parcellabelsPDF>{BASE64-Label}</parcellabelsPDF>
<shipmentResponses>
<identificationNumber></identificationNumber>
<mpsId>MPS0608511800028820260930</mpsId>
<parcelInformation>
<parcelLabelNumber>06085118000291</parcelLabelNumber>
<dpdReference></dpdReference>
</parcelInformation>
<tracingId>06085118000288</tracingId>
</shipmentResponses>
</orderResult>
</storeOrdersResponse>
</soap:Body>
</soap:Envelope>

Réponse (erreur) :

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soap:Body>
<soap:Fault>
<faultcode>soap:Server</faultcode>
<faultstring>Fault occurred</faultstring>
<detail>
<ns:faults xmlns:ns="http://dpd.com/common/service/types/ShipmentService/3.5">
<faultCode>SHP-VAL-WEIGHT-INVALID</faultCode>
<message>Weight is invalid or exceeds the maximum allowed for this service.</message>
</ns:faults>
<ns:faults xmlns:ns="http://dpd.com/common/service/types/ShipmentService/3.5">
<faultCode>SHP-VAL-NAME-REQUIRED</faultCode>
<message>Name is required.</message>
</ns:faults>
<ns:faults xmlns:ns="http://dpd.com/common/service/types/ShipmentService/3.5">
<faultCode>SHP-VAL-ZIPCODE-COUNTRY-MISMATCH</faultCode>
<message>Zip code does not match the format used in the destination country.</message>
</ns:faults>
<ns:faults xmlns:ns="http://dpd.com/common/service/types/ShipmentService/3.5">
<faultCode>SHP-VAL-WEIGHT-MAX-CHARACTERS</faultCode>
<message>Weight value is too long.</message>
</ns:faults>
</detail>
</soap:Fault>
</soap:Body>
</soap:Envelope>

storeOrders — REST​

POST {baseUrl}/services/ShipmentService/storeOrders

Corps de la requête :

{
"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"
}
}]
}
}

Réponse (succès) :

{
"orderResult": {
"parcellabelsPDF": "{BASE64-Label}",
"shipmentResponses": [{
"identificationNumber": "",
"mpsId": "B2C0608000000174920200525",
"parcelInformation": [{
"parcelLabelNumber": "06080000001749",
"dpdReference": null
}],
"faults": []
}]
},
"status": { "type": "OK", "code": "200", "message": "valid" }
}

Réponse (erreur) :

{
"orderResult": null,
"status": {
"type": "FaultCodeType",
"code": "ERR_DELICOM_TOKEN_EXPIRED",
"message": "token has expired"
}
}

Types complexes​

Espace de noms : types​

URL : http://dpd.com/common/service/types/ShipmentService/3.5

address​

ChampType / OccurrenceDescription
name1xs:string / 1..1 · max 35Nom du titulaire de l'adresse
name2xs:string / 0..1 · max 35Nom 2 du titulaire de l'adresse
streetxs:string / 1..1 · max 35Rue
houseNoxs:string / 0..1 · max 8Numéro de maison
street2xs:string / 0..1 · max 35Rue 2
statexs:string / 0..1 · length 2État (ISO 3166-2, p. ex. ZH)
countryxs:string / 1..1 · length 2Pays (ISO 3166-1 alpha-2, p. ex. CH)
zipCodexs:string / 1..1 · max 9Code postal
cityxs:string / 1..1 · max 35Ville
glnxs:long / 0..1Numéro de localisation international
customerNumberxs:string / 0..1 · max 17Numéro de client
contactxs:string / 0..1 · max 35Personne de contact
phonexs:string / 0..1 · max 30Numéro de téléphone
faxxs:string / 0..1 · max 30Numéro de fax
emailxs:string / 0..1 · max 50E-mail (max 40 pour les demandes de collecte)
commentxs:string / 0..1 · max 70Commentaire
iaccountxs:string / 0..1 · max 50Affectation de compte / centre de coûts

cod (Cash on Delivery)​

ChampType / OccurrenceDescription
amountxs:long / 1..1 · max 350000Montant du contre-remboursement sous forme d'entier (p. ex. 30000 = 300.00 CHF)
currencyxs:string / 1..1 · length 3Code de devise ISO 4217 — toujours CHF
inkassoxs:int / 1..1 · 0Type d'encaissement : 0 = espèces
purposexsd:string / 0..1 · max 14Motif d'utilisation
bankCodexs:string / 0..1 · max 25Code bancaire (nécessite bankName, bankAccountNumber, bankAccountHolder)
bankNamexs:string / 0..1 · max 27Nom de la banque
bankAccountNumberxs:string / 0..1 · max 25Numéro de compte bancaire
bankAccountHolderxs:string / 0..1 · max 30Titulaire du compte
ibanxs:string / 0..1 · max 50IBAN
bicxs:string / 0..1 · max 50BIC

generalShipmentData​

ChampType / OccurrenceDescription
sendingDepotxs:string / 1..1 · length 4Dépôt responsable (valeur issue de LoginService, avec zéros initiaux, p. ex. 0615)
productxs:string / 1..1Code produit — voir Services et options
sendertypes:address / 1..1Adresse de l'expéditeur
recipienttypes:address / 1..1Adresse du destinataire
identificationNumberxs:string / 0..1 · max 999Clé alphanumérique unique de l'envoi
mpsIdxs:string / 0..1 · length 25Numéro d'envoi (commence par MPS, EXP ou B2C)
mpsCustomerReferenceNumber1–4xs:string / 0..1 · max 35Numéros de référence client
mpsWeightxs:long / 0..1Poids de l'envoi en grammes (par tranches de 10 g, sans décimale)
mpsExpectedSendingDatexs:string / 0..1Date d'expédition prévue (YYYYMMDD)
mpsExpectedSendingTimexs:string / 0..1Heure d'expédition prévue (HHMMSS)

notification​

ChampType / OccurrenceDescription
channelxs:int / 1..11 = e-mail, 3 = SMS
valuexs:string / 1..1 · max 50Adresse e-mail ou numéro de téléphone (format international, p. ex. +41790000000)
languagexs:string / 0..1 · length 2Langue de notification (ISO 3166-1 alpha-2, p. ex. DE)

parcel​

ChampType / OccurrenceDescription
parcelLabelNumberxs:string / 0..1 · length 14Numéro d'étiquette de colis
customerReferenceNumber1–4xs:string / 0..1 · max 35Numéros de référence du colis
weightxs:int / 0..1Poids du colis en grammes (par tranches de 10 g)
volumexs:int / 0..1Volume en cm³ (format LLLWWWHHH)
swapxs:boolean / 0..1Indicateur de colis d'échange (par défaut : false)
hazardousLimitedQuantitiesxs:boolean / 0..1Marchandises dangereuses en quantités limitées (par défaut : false)
contentxs:string / 0..1 · max 50Description du contenu du colis
codtypes:cod / 0..1Données de contre-remboursement
returnsxs:boolean / 0..1Indicateur de colis retour (par défaut : false)
info1xs:string / 0..1 · max 29Champ d'information 1 (demande de collecte uniquement, imprimé sur l'étiquette)
info2xs:string / 0..1 · max 30Champ d'information 2 (demande de collecte uniquement, imprimé sur l'étiquette)

printOptions​

ChampType / OccurrenceDescription
printerLanguagexs:string / 1..1 · PDF ou ZPLFormat de sortie. La sortie est toujours encodée en base64
paperFormatxs:string / 1..1 · A4 ou A6Format de papier de l'étiquette
startPositiontypes:startPosition / 0..1Position de départ sur le papier A4
printerResolutionxs:double / 1..1 · 150, 200/203, 300, 600ZPL uniquement (ignoré par PDF). Résolution de l'imprimante en ppp. Doit correspondre à la densité physique de la tête d'impression Zebra — les autres valeurs ne sont pas prises en charge.

productAndServiceData​

ChampType / OccurrenceDescription
orderTypexs:string / 1..1consignment, collection request order ou pickup information
pickuptypes:pickup / 0..1Informations de collecte
parcelShopDeliverytypes:parcelShopDelivery / 0..1Données de livraison en point relais
predicttypes:notification / 0..1Notification interactive (e-mail ou SMS uniquement)
exWorksDeliveryxs:boolean / 0..1Le destinataire paie l'envoi (par défaut : false)
guaranteexs:boolean / 0..1Garantie pour les envois internationaux (produits NP, E18 uniquement)
tyresxs:boolean / 0..1Pneus en vrac (produit NP uniquement)

storeOrders​

ChampType / OccurrenceDescription
printOptionstypes:printOptions / 0..1Options d'impression d'étiquette
ordertypes:shipmentServiceData / 1..30Données d'expédition (jusqu'à 30 par appel)

storeOrdersResponseType​

ChampType / OccurrenceDescription
parcellabelsPDFxs:base64Binary / 0..1Données d'étiquette de colis PDF ou ZPL (encodées en base64)
shipmentResponsestypes:shipmentResponse / 0..*Données de réponse par ordre d'expédition

Espace de noms : types_authentication​

URL : http://dpd.com/common/service/types/Authentication/2.0

authentication​

ChampType / OccurrenceDescription
delisIdxsd:string / 1..1 · 8–10 caractèresIdentifiant utilisateur DELIS
authTokenxsd:string / 1..1 · 0–64 caractèresJeton issu de LoginService.getAuth
messageLanguagexsd:string / 1..1 · length 5de_CH, fr_CH, it_CH ou en_CH

Types simples​

startPosition​

ValeurDescription
UPPER_LEFTPosition en haut à gauche sur A4
UPPER_RIGHTPosition en haut à droite sur A4
LOWER_LEFTPosition en bas à gauche sur A4
LOWER_RIGHTPosition en bas à droite sur A4

Points d'accès​

EnvironnementProtocoleURL
StageSOAPhttps://shivah-st.dpd.ch/external/soap/services/ShipmentService
LiveSOAPhttps://shivah.dpd.ch/external/soap/services/ShipmentService
StageRESThttps://shivah-st.dpd.ch/external/rest/services/ShipmentService/storeOrders
LiveRESThttps://shivah.dpd.ch/external/rest/services/ShipmentService/storeOrders