SlideShare a Scribd company logo
TMS Online

Webservice beschrijving




         Datum:      4-6-2012

         Versie:     1.1

         Auteur:     Sander Vendrig (Moving IT)
TMS Online:                                                                                                                            Webservices


Inhoud
1.      Webservices .................................................................................................................................... 4
2.      Aanwezige Webservices: ................................................................................................................. 5
     2.1 Toevoegen opdracht ..................................................................................................................... 5
     2.2 Verwijderen opdracht ................................................................................................................... 5
     2.3 Opvragen labels ............................................................................................................................. 5
     2.4 Opvragen verzendlijst.................................................................................................................... 5
     2.5 Verwerken opdrachten ................................................................................................................. 6
     2.6 Toevoegen vooraanmelding .......................................................................................................... 6
     2.7 Opvragen Definities TransMission................................................................................................. 6
     2.8 Opvragen verwachtte aankomsttijden .......................................................................................... 6
     2.9 Opvragen status van opdrachten .................................................................................................. 7
     2.10 Opvragen straat- en plaatsnaam ................................................................................................. 7
     2.11 Opvragen postcode indeling ....................................................................................................... 7
3.      Technische gegevens ....................................................................................................................... 8
     3.1 Eigenschappen XML elementen: ................................................................................................... 8
     3.2 Inloggen: ........................................................................................................................................ 8
     3.3 addOpdracht() ............................................................................................................................... 9
        3.3.1 Aanvraag ................................................................................................................................. 9
        3.3.2 Resultaat ............................................................................................................................... 10
     3.4 delOpdracht() .............................................................................................................................. 11
        3.4.1 Aanvraag ............................................................................................................................... 11
        3.4.2 Resultaat ............................................................................................................................... 11
     3.5 getLabels() ................................................................................................................................... 12
        3.5.1 Aanvraag ............................................................................................................................... 12
        3.5.2 Resultaat ............................................................................................................................... 12
     3.6 getVerzendlijst() .......................................................................................................................... 13
        3.6.1 Aanvraag ............................................................................................................................... 13
        3.6.2 Resultaat ............................................................................................................................... 13
     3.7 sendOpdrachten() ....................................................................................................................... 13
        3.7.1 Aanvraag ............................................................................................................................... 13
        3.7.2 Resultaat ............................................................................................................................... 13




                                                                 Pagina 2 van 19
TMS Online:                                                                                                                      Webservices


 3.8 addVooraanmelding().................................................................................................................. 14
    3.8.1 Aanvraag ............................................................................................................................... 14
    3.8.2 Resultaat ............................................................................................................................... 14
 3.9 getDefinities() .............................................................................................................................. 15
    3.9.1 Aanvraag ............................................................................................................................... 15
    3.9.2 Resultaat ............................................................................................................................... 15
 3.10 getETA() ..................................................................................................................................... 17
    3.10.1 Aanvraag ............................................................................................................................. 17
    3.10.2 Resultaat ............................................................................................................................. 17
 3.11 getStatus() ................................................................................................................................. 17
    3.11.1 Aanvraag ............................................................................................................................. 17
    3.11.2 Resultaat ............................................................................................................................. 17
 3.12 getAdresNL() .............................................................................................................................. 18
    312.1 Aanvraag .............................................................................................................................. 18
    3.12.2 Resultaat ............................................................................................................................. 18
 3.12 getPkgebied() ............................................................................................................................ 19
    312.1 Aanvraag .............................................................................................................................. 19
    3.12.2 Resultaat ............................................................................................................................. 19




                                                            Pagina 3 van 19
TMS Online:                                                                 Webservices


1. Webservices
TransMission heeft veel mogelijkheden om uitgebreide koppelingen met externe software
te realiseren. Onder een uitgebreide koppeling verstaat TransMission komplete informatie
uitwisseling over uw zendinggegevens:

      Import nieuwe zendingen
      Export levensloop/historie van uw zendingen
      Export ETA tijden van uw zendingen
      Export afleverbewijzen/handtekeningen

Naast traditionele koppelingen op basis van het importeren en exporteren van bestanden
in allerlei soorten formaten (xml, excel, csv, tekst), zijn er nu ook webservices
beschikbaar.

Webservices zijn een soort modules die niet in uw eigen software gebouwd hoeven te
worden, maar die vanuit uw software benaderd kunnen worden, zodat het voor de
gebruiker lijkt als of de module een onderdeel is van de eigen software.

Indien uw software geschikt is om webservices te benaderen en de output ervan te
verwerken, kunt u zonder al te veel aanpassingen een volledige integratie met de
software van TransMission tot stand brengen. Ook is het mogelijk om onderdelen te
gebruiken voor integratie in uw eigen systeem.

In dit document een technische beschrijving van de verschillende webservices, op basis
waarvan u kunt bepalen of en in welke mate uw software met behulp van webservices
kan worden gekoppeld met die van TransMission.




                                    Pagina 4 van 19
TMS Online:                                                                    Webservices


2. Aanwezige Webservices:

2.1 Toevoegen opdracht

Functienaam: addOpdracht()

Deze functie kan worden gebruikt voor het direct toevoegen van nieuwe zendingen in het
systeem van TransMission.

Als resultaat wordt direct een PDF document met de correcte labels volgens het
TransMission formaat en een uniek zendingnummer teruggestuurd. Deze labels dient u af
te drukken en op de verschillende verzendeenheden te plakken. Het unieke
zendingnummer kunt u gebruiken voor Tracking & Tracing doeleinden.

De functie maakt gebruik van de online module van TransMission (Transmit For
Internet), en de opdrachten zijn na succesvol toevoegen daar dan ook direct te
raadplegen.

Eventueel kunnen ook via die applicatie de labels worden uitgeprint.



2.2 Verwijderen opdracht

Functienaam: delOpdracht()

Een toegevoegde opdracht kan ook weer verwijderd worden. Hiervoor wordt het
zendingnummer dat is gegenereerd bij het toevoegen van de opdracht meegestuurd.

Noot: het verwijderen van een opdracht is alleen mogelijk als deze nog niet definitief
verwerkt is (zie Verwerken opdrachten)


2.3 Opvragen labels

Functienaam: getLabels()

Als de labels van één of meerdere opdrachten nog een keer geprint moeten worden, kan
deze functie worden gebruikt. De functie geeft als resultaat een PDF document met labels
van de opgevraagde opdrachten.


2.4 Opvragen verzendlijst

Functienaam: getVerzendlijst()

Met behulp van deze functie kan een PDF document worden opgevraagd, met daarin een
overzicht van alle opdrachten die klaar staan om te verzenden.

Deze lijst is bedoelt als controle overzicht. Deze lijst dient te worden afgedrukt, en moet
meegegeven worden aan de chauffeur. Een 2e kopie kunt u door de chauffeur laten
ondertekenen en zelf bewaren.




                                     Pagina 5 van 19
TMS Online:                                                                   Webservices


2.5 Verwerken opdrachten

Functienaam: sendOpdrachten()

Door het aanroepen van deze functie worden alle openstaande opdrachten (met een
verzenddatum van de huidige datum of eerder) definitief verwerkt in het systeem van
TransMission.

U kunt na deze verwerking de opdrachten niet meer wijzigen, of verwijderen.



2.6 Toevoegen vooraanmelding

Functienaam: addVooraanmelding()

Met behulp van deze functie kunt u aan het begin van de dag bij uw depot melden dat er
op de huidige datum goederen bij u afgehaald moeten worden. Het depot zal op basis
van deze vooraanmelding een chauffeur inplannen, om de goederen nog dezelfde dag bij
u af te komen halen.



2.7 Opvragen Definities TransMission

Functienaam: getDefinities()

Voor het aanmaken van opdrachten in uw eigen systeem heeft u verschillende
definitietabellen nodig. Deze kunt u opvragen met behulp van deze functie.
De volgende definities worden teruggekoppeld:

Type opdrachten (inclusief bijbehorende code)
Type plusdiensten (extra services, inclusief bijbehorende code)
Type verzendeenheden (inclusief bijbehorende code)
Landen (inclusief bijbehorende code)
Postcodeindeling (voor bepaling sorteercode/aankomst depot)*

*     De postcode-indeling heeft u niet nodig als u voor het toevoegen van opdrachten
      gebruik maakt van deze webservice. U krijgt dan automatisch de juiste
      sorteercode op de labels.



2.8 Opvragen verwachtte aankomsttijden

Functienaam: getETA()

Als u verwachtte aankomsttijden van onze chauffeurs in uw systeem wilt kunnen
raadplegen, of zelf door wilt communiceren naar uw klanten, kunt u gebruik maken van
deze webservice. Zodra de depots klaar zijn met het plannen van de routes, zijn de ETA
tijden voor de betreffende dag beschikbaar (begin van de ochtend).




                                    Pagina 6 van 19
TMS Online:                                                                 Webservices


2.9 Opvragen status van opdrachten

Functienaam: getStatus()

U kunt met deze functie alle statusupdates van uw opdrachten opvragen van een
bepaalde datum. Hierin zitten alle scans, meldingen en handtekeningen die op die datum
zijn gegenereerd. Met behulp van deze gegevens kunt u in uw eigen applicatie of website
volledige tracking & tracing van uw opdrachten integreren.


2.10 Opvragen straat- en plaatsnaam

Functienaam: getAdresNL()

Om onnodige vertraging van uw zendingen te voorkomen, moeten de opgegeven
adresgegevens zo correct mogelijk zijn. TransMission beschikt over alle officiële
adresinformatie van alle Nederlandse adressen. Met behulp van deze functie kunt op
basis van een postcode de bijbehorende straat en plaatsnaam opvragen.


2.11 Opvragen postcode indeling

Functienaam: getPkgebied()

Als u vanuit uw eigen systeem labels wilt creëren, dient u er rekening mee te houden dat
naast een unieke barcode per verzendeenheid, ook duidelijk zichtbaar een depot nummer
op het label komt te staan. Het depotnummer is afhankelijk van de postcode en het land
van het adres waar geleverd moet worden. Met behulp van deze postcode indeling kan
de meest recente postcode indeling worden opgevraagd.




                                    Pagina 7 van 19
TMS Online:                                                                         Webservices


3. Technische gegevens
De webservice is opgezet met SOAP/WSDL.
De werking, definities en structuren van de webservice kunt u raadplegen in het WSDL
document achter de volgende link:

http://portal.trans-mission.nl/webservices/TMSOnline.wsdl



3.1 Eigenschappen XML elementen:

Een XML element kan de volgende eigenschappen bevatten:
nillable             = Veld moet gevuld zijn met een waarde (false=nee,true=ja)
minOccurs            = minimaal aantal keer dat element voor mag komen (0=niet
verplicht, 1=verplicht)
maxOccurs     = maximaal aantal keer dat element voor mag komen
(unbounded=oneindig aantal keer)



3.2 Inloggen:

U moet bij het aanroepen van elke functie een object met logingegevens meesturen.

In dit object zitten de volgende attributen:

Username (op te vragen bij uw depot)
Password (op te vragen bij uw depot)
Depot (4-cijferig nummer van het depot waar u klant bij bent)
Verlader (uw klantnummer)

<xsd:complexType name="oLogin">
<xsd:all>
<xsd:element type="xsd:string" name="username" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="password" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="depot" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="verlader" nillable="false" maxOccurs="1" minOccurs="1"/>
</xsd:all>
</xsd:complexType>




                                        Pagina 8 van 19
TMS Online:                                                                           Webservices


3.3 addOpdracht()
3.3.1 Aanvraag
De functie wordt aangeroepen met het loginobject en een opdracht object.

<message name="addOpdrachtRequest">
<part type="typens:oLogin" name="oLogin"/>
<part type="typens:oOpdracht" name="oOpdracht"/>
</message>

Hieronder de definitie van een opdracht object:
<xsd:complexType name="oOpdracht">
<xsd:all>
<xsd:element type="xsd:string" name="type" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="nrorder" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="datum" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="afzender" nillable="true" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="afznaam" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="afznaam2" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="afzastraat" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="afzhuisnr" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="afzpostcode" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="afzplaats" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="afzland" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="geanaam" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="geanaam2" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="geastraat" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="geahuisnr" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="geapostcode" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="geaplaats" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="gealand" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="geatelefoon" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="geaemail" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="instructie" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="rembours" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="typens:ArrayofPlus" name="aPlus" maxOccurs="1" minOccurs="0"/>
<xsd:element type="typens:ArrayofRegel" name="aRegel" maxOccurs="1" minOccurs="1"/>
</xsd:all>
</xsd:complexType>

Een opdracht object bevat altijd 1 of meerdere regels. Deze zitten in het element aRegel.
Dit element is een array met objecten van het type Regel:

<xsd:complexType name="ArrayofRegel">
<xsd:complexContent>
<xsd:restriction base="soapenc:Array">
        <xsd:attribute wsdl:arrayType="typens:Regel[]" ref="soapenc:arrayType"/>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="Regel">
<xsd:all>
<xsd:element type="xsd:string" name="nrcollo" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="vrzenh" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="aantalop" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="gewicht" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="referentie" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="omsverp" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="omruilen" nillable="true" maxOccurs="1" minOccurs="0"/>
</xsd:all>
</xsd:complexType>




                                         Pagina 9 van 19
TMS Online:                                                                          Webservices


Een opdracht object kan meerdere plusdiensten (extra services bij een opdracht)
bevatten. Deze zitten dan in het element aPlus. Dit element is een array met objecten
van het type Plus:

<xsd:complexType name="ArrayofPlus">
<xsd:complexContent>
<xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="typens:Plus[]" ref="soapenc:arrayType"/>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="Plus">
<xsd:all>
<xsd:element type="xsd:string" name="kode" nillable="false" maxOccurs="1" minOccurs="1"/>
</xsd:all>
</xsd:complexType>




3.3.2 Resultaat
Het resultaat van deze functie is een transport object:

<message name="addOpdrachtResponse">
<part type="typens:oTransport" name="addOpdrachtResult"/>
</message>


Een transport object bestaat uit een uniek zendingnummer, en een pdf document gecodeerd als een
base64 string:
<xsd:complexType name="oTransport">
<xsd:all>
<xsd:element type="xsd:string" name="zendingnr" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:base64Binary" name="labels" nillable="false" minOccurs="1" maxoccurs="1"/>
</xsd:all>
</xsd:complexType>


Eventuele foutmeldingen die op kunnen treden zijn:

1. Onjuiste inloggegevens
Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u
aangemaakt

2. 1 of meerdere fouten in opdracht invoer
Opdracht moet eerst worden gecorrigeerd voordat deze kan worden toegevoegd

3. Opslaan nieuwe opdracht niet gelukt
Interne fout bij TransMission: wijst op een bug in de webservice bij TransMission en zal
zo snel mogelijk worden uitgezocht opgelost nadat deze is voorgekomen




                                         Pagina 10 van 19
TMS Online:                                                                    Webservices


3.4 delOpdracht()
3.4.1 Aanvraag
De functie wordt aangeroepen met het loginobject en het unieke zendingnummer dat in
het transport object als resultaat van de functie getOpdracht() is geretourneerd:

<message name="delOpdrachtRequest">
<part type="typens:oLogin" name="oLogin"/>
<part type="xsd:string" name="nrzend"/>
</message>



3.4.2 Resultaat
Het resultaat van deze functie is de volgende tekst: “Opdracht {zendingnummer} verwijderd”
Met op de plek van {zendingnummer} het unieke zendingnummer van de opdracht dat is
verwijderd.

<message name="delOpdrachtResponse">
<part type="xsd:string" name="delOpdrachtResult"/>
</message>


Eventuele foutmeldingen die op kunnen treden zijn:

1. Onjuiste inloggegevens
Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u
aangemaakt

2. Opdracht niet gevonden
Er bestaat geen opdracht in het systeem van TransMission met het opgegeven
zendingnummer

3. Opdracht kan niet worden verwijderd
De opdracht is al verwerkt en kan niet meer worden verwijderd.




                                      Pagina 11 van 19
TMS Online:                                                                           Webservices


3.5 getLabels()
3.5.1 Aanvraag
De functie wordt aangeroepen met het loginobject. Daarnaast wordt een array
opgegeven met daarin alle zendingnummers waarvan de labels worden opgevraagd:

<message name="getLabelsRequest">
<part type="typens:oLogin" name="oLogin"/>
<part type="array" name="aNrzend"/>
</message>

3.5.2 Resultaat
Het resultaat van deze functie is een pdf document gecodeerd als een base64 string.

<message name="getVerzendlijstResponse">
<part type="xsd:base64Binary" name="getLabelsResult"/>
</message>


Eventuele foutmeldingen die op kunnen treden zijn:

1. Onjuiste inloggegevens
Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u
aangemaakt

2. Opgevraagde labels niet gevonden
Van de zendingnummers die zijn opgegeven kan geen openstaande (nog niet verzonden)
opdracht worden gevonden. Er kunnen daarom geen labels worden aangemaakt.




                                        Pagina 12 van 19
TMS Online:                                                                           Webservices


3.6 getVerzendlijst()
3.6.1 Aanvraag
De functie wordt aangeroepen met het loginobject:

<message name="getVerzendlijstRequest">
<part type="typens:oLogin" name="oLogin"/>
</message>

3.6.2 Resultaat
Het resultaat van deze functie is een pdf document gecodeerd als een base64 string.

<message name="getVerzendlijstResponse">
<part type="xsd:base64Binary" name="getVerzendlijstResult"/>
</message>


Eventuele foutmeldingen die op kunnen treden zijn:

1. Onjuiste inloggegevens
Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u
aangemaakt

2. Geen openstaande opdrachten
Er zijn geen opdrachten (met een verzenddatum gelijk of kleiner dan de huidige datum)
in het systeem van TransMission die nog niet zijn verwerkt.


3.7 sendOpdrachten()
3.7.1 Aanvraag
De functie wordt aangeroepen met het loginobject:

<message name="sendOpdrachtenRequest">
<part type="typens:oLogin" name="oLogin"/>
</message>

3.7.2 Resultaat
Het resultaat van deze functie is de volgende tekst: “Bestand aangemaakt”

<message name="sendOpdrachtenResponse">
<part type="xsd:string" name="sendOpdrachtenResult"/>
</message>


Eventuele foutmeldingen die op kunnen treden zijn:

1. Onjuiste inloggegevens
Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u
aangemaakt

2. Geen openstaande opdrachten
Er zijn geen opdrachten (met een verzenddatum gelijk of kleiner dan de huidige datum)
in het systeem van TransMission die nog niet zijn verwerkt.




                                        Pagina 13 van 19
TMS Online:                                                                          Webservices


3.8 addVooraanmelding()
3.8.1 Aanvraag
De functie wordt aangeroepen met een 4-cijferig depot nummer, een
verlader(klant)nummer en een vooraanmelding object:

<message name="addVooraanmeldingRequest">
<part type="xsd:string" name="depot"/>
<part type="xsd:string" name="verlader"/>
<part type="xsd:object" name="oVooraanmelding"/>
</message>

Hieronder de definitie van een vooraanmelding object:

<xsd:complexType name="oVooraanmelding">
<xsd:all>
<xsd:element type="xsd:string" name="pallet" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="colli" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="gewicht" nillable="false" maxOccurs="1" minOccurs="1"/>
</xsd:all>
</xsd:complexType>

3.8.2 Resultaat
Het resultaat van deze functie is de volgende tekst: “Bedankt voor de vooraanmelding”

<message name="addVooraanmeldingResponse">
<part type="xsd:string" name="result"/>
</message>


Eventuele foutmeldingen die op kunnen treden zijn:

1. Onjuist depot
Het opgegeven depotnummer is niet bekend bij TransMission




                                        Pagina 14 van 19
TMS Online:                                                                         Webservices


3.9 getDefinities()
3.9.1 Aanvraag
De functie wordt aangeroepen met het loginobject:

<message name="getDefinitiesRequest">
<part type="typens:oLogin" name="oLogin" />
</message>

3.9.2 Resultaat
Het resultaat van deze functie is een definitie object:

<message name="getDefinitiesResponse">
<part type="typens:oDefinitie" name="oDefinities"/>
</message>


Een definitie object bestaat uit een array van elke benodigde stamtabel
(Landen,Zendingsoorten,Plusdiensten,Verzendeenheden):
<xsd:complexType name="oDefinitie">
<xsd:all>
<xsd:element type="typens:ArrayofLandDef" name="aLandDef" maxOccurs="1" minOccurs="1"/>
<xsd:element type="typens:ArrayofZndSrtDef" name="aZndSrtDef" maxOccurs="1" minOccurs="1"/>
<xsd:element type="typens:ArrayofPlusDef" name="aPlusDef" maxOccurs="1" minOccurs="1"/>
<xsd:element type="typens:ArrayofVrzenhDef" name="aVrzenhDef" maxOccurs="1" minOccurs="1"/>
</xsd:all>
</xsd:complexType>



De array met landdefinities is als volgt opgebouwd:

<xsd:complexType name="ArrayofLandDef">
<xsd:complexContent>
<xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="typens:LandDef[]" ref="soapenc:arrayType"/>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="LandDef">
<xsd:all>
<xsd:element type="xsd:string" name="TMSKode" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="AltKode" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="Omschrijving" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="MaxGewicht" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="MaxRembours" nillable="false" maxOccurs="1" minOccurs="1"/>
</xsd:all>
</xsd:complexType>




                                          Pagina 15 van 19
TMS Online:                                                                          Webservices


De array met definities van de zendingsoorten is als volgt opgebouwd:

<xsd:complexType name="ArrayofZndSrtDef">
<xsd:complexContent>
<xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="typens:LandDef[]" ref="soapenc:arrayType"/>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="ZndSrtDef">
<xsd:all>
<xsd:element type="xsd:string" name="TMSKode" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="Omschrijving" nillable="false" maxOccurs="1" minOccurs="1"/>
</xsd:all>
</xsd:complexType>



De array met definities van de plusdiensten is als volgt opgebouwd:

<xsd:complexType name="ArrayofPlusDef">
<xsd:complexContent>
<xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="typens:PlusDef[]" ref="soapenc:arrayType"/>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="PlusDef">
<xsd:all>
<xsd:element type="xsd:string" name="TMSKode" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="Omschrijving" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="LandKode" nillable="false" maxOccurs="1" minOccurs="1"/>
</xsd:all>
</xsd:complexType>



De array met definities van de verzendeenheden is als volgt opgebouwd:

<xsd:complexType name="ArrayofVrzenhDef">
<xsd:complexContent><xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="typens:VrzenhDef[]" ref="soapenc:arrayType"/>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="VrzenhDef">
<xsd:all>
<xsd:element type="xsd:string" name="TMSKode" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="Omschrijving" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="Lengte" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="Breedte" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="MaxLengte" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="MaxHoogte" nillable="true" maxOccurs="1" minOccurs="0"/>
<xsd:element type="xsd:string" name="MaxGewicht" nillable="true" maxOccurs="1" minOccurs="0"/>
</xsd:all>
</xsd:complexType>



Eventuele foutmeldingen die op kunnen treden zijn:

1. Onjuiste inloggegevens
Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u
aangemaakt




                                        Pagina 16 van 19
TMS Online:                                                                 Webservices


3.10 getETA()
3.10.1 Aanvraag
De functie wordt aangeroepen met het loginobject en een datum:

<message name="getETARequest">
<part type="typens:oLogin" name="oLogin"/>
<part type="xsd:date" name="datum"/>
</message>

De datum moet altijd volgens het formaat YYYY-mm-dd zijn (bv: 2012-02-08).


3.10.2 Resultaat
Eventuele foutmeldingen die op kunnen treden zijn:

1. Onjuiste inloggegevens
Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u
aangemaakt

2. Er zijn geen ETA tijden bekend
Er zijn (nog) geen ETA tijden bekend voor uw opdrachten, of er zijn geen opdrachten
voor de opgegeven datum.



3.11 getStatus()
3.11.1 Aanvraag
De functie wordt aangeroepen met het loginobject en een datum:

<message name="getStatusRequest">
<part type="typens:oLogin" name="oLogin"/>
<part type="xsd:date" name="datum"/>
</message>

De datum moet altijd volgens het formaat YYYY-mm-dd zijn (bv: 2012-02-08).


3.11.2 Resultaat
Eventuele foutmeldingen die op kunnen treden zijn:

1. Onjuiste inloggegevens
Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u
aangemaakt

2. Er zijn geen ETA tijden bekend
Er zijn (nog) geen ETA tijden bekend voor uw opdrachten, of er zijn geen opdrachten
voor de opgegeven datum.




                                      Pagina 17 van 19
TMS Online:                                                                          Webservices


3.12 getAdresNL()
312.1 Aanvraag
De functie wordt aangeroepen met het loginobject en een postcode:

<message name="getAdresNLRequest">
<part type="typens:oLogin" name="oLogin" />
<part type="xsd:string" name="postcode" />
</message>


3.12.2 Resultaat

<message name="getAdresNLResponse">
<part type="typens:oAdres" name="getAdresResult"/>
</message>

<xsd:complexType name="oAdres">
<xsd:all>
<xsd:element type="xsd:string" name="straat" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="postcode" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="plaats" nillable="false" maxOccurs="1" minOccurs="1"/>
</xsd:all>
</xsd:complexType>

Eventuele foutmeldingen die op kunnen treden zijn:

1. Onjuiste inloggegevens
Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u
aangemaakt

2. Onjuiste postcode (Moet bestaan uit 4 cijfers, 2 letters)
Het formaat van de ingegeven postcode is onjuist, of betreft geen Nederlandse postcode.

3. Er is geen adres gevonden op deze postcode
Onbekende postcode




                                        Pagina 18 van 19
TMS Online:                                                                          Webservices


3.12 getPkgebied()
312.1 Aanvraag
De functie wordt aangeroepen met het loginobject:

<message name="getPkgebiedRequest">
<part type="typens:oLogin" name="oLogin" />
</message>


3.12.2 Resultaat

<message name="getPkgebiedResponse">
<part type="typens:ArrayofPkgebied" name="getPkgebiedResult"/>
</message>

De array met Pkgebied records is als volgt opgebouwd:

<xsd:complexType name="ArrayofPkgebied">
<xsd:complexContent>
<xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="typens:Pkgebied[]" ref="soapenc:arrayType"/>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="Pkgebied"><xsd:all>
<xsd:element type="xsd:string" name="Pkvan" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="Pktot" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="Kdland" nillable="false" maxOccurs="1" minOccurs="1"/>
<xsd:element type="xsd:string" name="Nrdepaan" nillable="false" maxOccurs="1" minOccurs="1"/>
</xsd:all>
</xsd:complexType>



Eventuele foutmeldingen die op kunnen treden zijn:

1. Onjuiste inloggegevens
Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u
aangemaakt




                                       Pagina 19 van 19

More Related Content

PDF
User manual MXSuite NL 201902
Mastex Software BV
 
PDF
Digitaliseringsplan Erfgoed (Universiteitsbibliotheek Amsterdam) 2010-2011. B...
HenrietteReerink
 
PDF
LinkedIn Gebruiksaanwijzing
Duco Scholtanus
 
PDF
Linked in netwerking_op_het_internet_okt_2009
kittyleuverink
 
PDF
GBO Overheid Koppelvlak Digipoort
Friso de Jong
 
PDF
Aanvragen en instellen van een Microsoft BPOS Trial Account
Peter de Haas
 
PDF
Communicatie familiebedrijven
Tessa Smits
 
PDF
Sociale media strategie_voor_politie
Frank Smilda
 
User manual MXSuite NL 201902
Mastex Software BV
 
Digitaliseringsplan Erfgoed (Universiteitsbibliotheek Amsterdam) 2010-2011. B...
HenrietteReerink
 
LinkedIn Gebruiksaanwijzing
Duco Scholtanus
 
Linked in netwerking_op_het_internet_okt_2009
kittyleuverink
 
GBO Overheid Koppelvlak Digipoort
Friso de Jong
 
Aanvragen en instellen van een Microsoft BPOS Trial Account
Peter de Haas
 
Communicatie familiebedrijven
Tessa Smits
 
Sociale media strategie_voor_politie
Frank Smilda
 

Viewers also liked (20)

PPT
Aula virtual y correo institucional
weripe
 
PPT
Aula virtual y correo institucional
weripe
 
PPT
Aula virtual y correo institucional
weripe
 
PPT
Magia dos números
Roseglecia
 
PPTX
Business ethics
yukti_chauhan
 
PPTX
Articles and Quantifiers
Eunice Mimi Aira Tan
 
PPT
Aula virtual y correo institucional
weripe
 
PPT
Aula virtual y correo institucional
weripe
 
PPT
Aula virtual y correo institucional
weripe
 
PDF
아이들을 위한 공공지원 사업 계획안
종원 윤
 
PPTX
Ict in f.l. learning
Edward Reyes Torres
 
PPTX
Concept of addition
shazza25
 
PPTX
Simetría axial, Axis symmetry
Enrique Troyo del Valle
 
PPTX
Dragonbox2 algebra exercises, linear equations explained at your own pace.
Enrique Troyo del Valle
 
DOCX
Ley de ohm
ERICK CONDE
 
PPT
8 марта
Elena-Sh
 
PDF
Assis, m não consultes médico
Nicolas Pelicioni
 
PDF
Rm579 2010-minsa
Guillermo Ramos
 
PPTX
Presentación powerpoint
Francisco Javier Sánchez
 
PDF
Gti aula 6
Jhosafá de Kastro
 
Aula virtual y correo institucional
weripe
 
Aula virtual y correo institucional
weripe
 
Aula virtual y correo institucional
weripe
 
Magia dos números
Roseglecia
 
Business ethics
yukti_chauhan
 
Articles and Quantifiers
Eunice Mimi Aira Tan
 
Aula virtual y correo institucional
weripe
 
Aula virtual y correo institucional
weripe
 
Aula virtual y correo institucional
weripe
 
아이들을 위한 공공지원 사업 계획안
종원 윤
 
Ict in f.l. learning
Edward Reyes Torres
 
Concept of addition
shazza25
 
Simetría axial, Axis symmetry
Enrique Troyo del Valle
 
Dragonbox2 algebra exercises, linear equations explained at your own pace.
Enrique Troyo del Valle
 
Ley de ohm
ERICK CONDE
 
8 марта
Elena-Sh
 
Assis, m não consultes médico
Nicolas Pelicioni
 
Rm579 2010-minsa
Guillermo Ramos
 
Presentación powerpoint
Francisco Javier Sánchez
 
Gti aula 6
Jhosafá de Kastro
 
Ad

Tms online 1 1

  • 1. TMS Online Webservice beschrijving Datum: 4-6-2012 Versie: 1.1 Auteur: Sander Vendrig (Moving IT)
  • 2. TMS Online: Webservices Inhoud 1. Webservices .................................................................................................................................... 4 2. Aanwezige Webservices: ................................................................................................................. 5 2.1 Toevoegen opdracht ..................................................................................................................... 5 2.2 Verwijderen opdracht ................................................................................................................... 5 2.3 Opvragen labels ............................................................................................................................. 5 2.4 Opvragen verzendlijst.................................................................................................................... 5 2.5 Verwerken opdrachten ................................................................................................................. 6 2.6 Toevoegen vooraanmelding .......................................................................................................... 6 2.7 Opvragen Definities TransMission................................................................................................. 6 2.8 Opvragen verwachtte aankomsttijden .......................................................................................... 6 2.9 Opvragen status van opdrachten .................................................................................................. 7 2.10 Opvragen straat- en plaatsnaam ................................................................................................. 7 2.11 Opvragen postcode indeling ....................................................................................................... 7 3. Technische gegevens ....................................................................................................................... 8 3.1 Eigenschappen XML elementen: ................................................................................................... 8 3.2 Inloggen: ........................................................................................................................................ 8 3.3 addOpdracht() ............................................................................................................................... 9 3.3.1 Aanvraag ................................................................................................................................. 9 3.3.2 Resultaat ............................................................................................................................... 10 3.4 delOpdracht() .............................................................................................................................. 11 3.4.1 Aanvraag ............................................................................................................................... 11 3.4.2 Resultaat ............................................................................................................................... 11 3.5 getLabels() ................................................................................................................................... 12 3.5.1 Aanvraag ............................................................................................................................... 12 3.5.2 Resultaat ............................................................................................................................... 12 3.6 getVerzendlijst() .......................................................................................................................... 13 3.6.1 Aanvraag ............................................................................................................................... 13 3.6.2 Resultaat ............................................................................................................................... 13 3.7 sendOpdrachten() ....................................................................................................................... 13 3.7.1 Aanvraag ............................................................................................................................... 13 3.7.2 Resultaat ............................................................................................................................... 13 Pagina 2 van 19
  • 3. TMS Online: Webservices 3.8 addVooraanmelding().................................................................................................................. 14 3.8.1 Aanvraag ............................................................................................................................... 14 3.8.2 Resultaat ............................................................................................................................... 14 3.9 getDefinities() .............................................................................................................................. 15 3.9.1 Aanvraag ............................................................................................................................... 15 3.9.2 Resultaat ............................................................................................................................... 15 3.10 getETA() ..................................................................................................................................... 17 3.10.1 Aanvraag ............................................................................................................................. 17 3.10.2 Resultaat ............................................................................................................................. 17 3.11 getStatus() ................................................................................................................................. 17 3.11.1 Aanvraag ............................................................................................................................. 17 3.11.2 Resultaat ............................................................................................................................. 17 3.12 getAdresNL() .............................................................................................................................. 18 312.1 Aanvraag .............................................................................................................................. 18 3.12.2 Resultaat ............................................................................................................................. 18 3.12 getPkgebied() ............................................................................................................................ 19 312.1 Aanvraag .............................................................................................................................. 19 3.12.2 Resultaat ............................................................................................................................. 19 Pagina 3 van 19
  • 4. TMS Online: Webservices 1. Webservices TransMission heeft veel mogelijkheden om uitgebreide koppelingen met externe software te realiseren. Onder een uitgebreide koppeling verstaat TransMission komplete informatie uitwisseling over uw zendinggegevens: Import nieuwe zendingen Export levensloop/historie van uw zendingen Export ETA tijden van uw zendingen Export afleverbewijzen/handtekeningen Naast traditionele koppelingen op basis van het importeren en exporteren van bestanden in allerlei soorten formaten (xml, excel, csv, tekst), zijn er nu ook webservices beschikbaar. Webservices zijn een soort modules die niet in uw eigen software gebouwd hoeven te worden, maar die vanuit uw software benaderd kunnen worden, zodat het voor de gebruiker lijkt als of de module een onderdeel is van de eigen software. Indien uw software geschikt is om webservices te benaderen en de output ervan te verwerken, kunt u zonder al te veel aanpassingen een volledige integratie met de software van TransMission tot stand brengen. Ook is het mogelijk om onderdelen te gebruiken voor integratie in uw eigen systeem. In dit document een technische beschrijving van de verschillende webservices, op basis waarvan u kunt bepalen of en in welke mate uw software met behulp van webservices kan worden gekoppeld met die van TransMission. Pagina 4 van 19
  • 5. TMS Online: Webservices 2. Aanwezige Webservices: 2.1 Toevoegen opdracht Functienaam: addOpdracht() Deze functie kan worden gebruikt voor het direct toevoegen van nieuwe zendingen in het systeem van TransMission. Als resultaat wordt direct een PDF document met de correcte labels volgens het TransMission formaat en een uniek zendingnummer teruggestuurd. Deze labels dient u af te drukken en op de verschillende verzendeenheden te plakken. Het unieke zendingnummer kunt u gebruiken voor Tracking & Tracing doeleinden. De functie maakt gebruik van de online module van TransMission (Transmit For Internet), en de opdrachten zijn na succesvol toevoegen daar dan ook direct te raadplegen. Eventueel kunnen ook via die applicatie de labels worden uitgeprint. 2.2 Verwijderen opdracht Functienaam: delOpdracht() Een toegevoegde opdracht kan ook weer verwijderd worden. Hiervoor wordt het zendingnummer dat is gegenereerd bij het toevoegen van de opdracht meegestuurd. Noot: het verwijderen van een opdracht is alleen mogelijk als deze nog niet definitief verwerkt is (zie Verwerken opdrachten) 2.3 Opvragen labels Functienaam: getLabels() Als de labels van één of meerdere opdrachten nog een keer geprint moeten worden, kan deze functie worden gebruikt. De functie geeft als resultaat een PDF document met labels van de opgevraagde opdrachten. 2.4 Opvragen verzendlijst Functienaam: getVerzendlijst() Met behulp van deze functie kan een PDF document worden opgevraagd, met daarin een overzicht van alle opdrachten die klaar staan om te verzenden. Deze lijst is bedoelt als controle overzicht. Deze lijst dient te worden afgedrukt, en moet meegegeven worden aan de chauffeur. Een 2e kopie kunt u door de chauffeur laten ondertekenen en zelf bewaren. Pagina 5 van 19
  • 6. TMS Online: Webservices 2.5 Verwerken opdrachten Functienaam: sendOpdrachten() Door het aanroepen van deze functie worden alle openstaande opdrachten (met een verzenddatum van de huidige datum of eerder) definitief verwerkt in het systeem van TransMission. U kunt na deze verwerking de opdrachten niet meer wijzigen, of verwijderen. 2.6 Toevoegen vooraanmelding Functienaam: addVooraanmelding() Met behulp van deze functie kunt u aan het begin van de dag bij uw depot melden dat er op de huidige datum goederen bij u afgehaald moeten worden. Het depot zal op basis van deze vooraanmelding een chauffeur inplannen, om de goederen nog dezelfde dag bij u af te komen halen. 2.7 Opvragen Definities TransMission Functienaam: getDefinities() Voor het aanmaken van opdrachten in uw eigen systeem heeft u verschillende definitietabellen nodig. Deze kunt u opvragen met behulp van deze functie. De volgende definities worden teruggekoppeld: Type opdrachten (inclusief bijbehorende code) Type plusdiensten (extra services, inclusief bijbehorende code) Type verzendeenheden (inclusief bijbehorende code) Landen (inclusief bijbehorende code) Postcodeindeling (voor bepaling sorteercode/aankomst depot)* * De postcode-indeling heeft u niet nodig als u voor het toevoegen van opdrachten gebruik maakt van deze webservice. U krijgt dan automatisch de juiste sorteercode op de labels. 2.8 Opvragen verwachtte aankomsttijden Functienaam: getETA() Als u verwachtte aankomsttijden van onze chauffeurs in uw systeem wilt kunnen raadplegen, of zelf door wilt communiceren naar uw klanten, kunt u gebruik maken van deze webservice. Zodra de depots klaar zijn met het plannen van de routes, zijn de ETA tijden voor de betreffende dag beschikbaar (begin van de ochtend). Pagina 6 van 19
  • 7. TMS Online: Webservices 2.9 Opvragen status van opdrachten Functienaam: getStatus() U kunt met deze functie alle statusupdates van uw opdrachten opvragen van een bepaalde datum. Hierin zitten alle scans, meldingen en handtekeningen die op die datum zijn gegenereerd. Met behulp van deze gegevens kunt u in uw eigen applicatie of website volledige tracking & tracing van uw opdrachten integreren. 2.10 Opvragen straat- en plaatsnaam Functienaam: getAdresNL() Om onnodige vertraging van uw zendingen te voorkomen, moeten de opgegeven adresgegevens zo correct mogelijk zijn. TransMission beschikt over alle officiële adresinformatie van alle Nederlandse adressen. Met behulp van deze functie kunt op basis van een postcode de bijbehorende straat en plaatsnaam opvragen. 2.11 Opvragen postcode indeling Functienaam: getPkgebied() Als u vanuit uw eigen systeem labels wilt creëren, dient u er rekening mee te houden dat naast een unieke barcode per verzendeenheid, ook duidelijk zichtbaar een depot nummer op het label komt te staan. Het depotnummer is afhankelijk van de postcode en het land van het adres waar geleverd moet worden. Met behulp van deze postcode indeling kan de meest recente postcode indeling worden opgevraagd. Pagina 7 van 19
  • 8. TMS Online: Webservices 3. Technische gegevens De webservice is opgezet met SOAP/WSDL. De werking, definities en structuren van de webservice kunt u raadplegen in het WSDL document achter de volgende link: http://portal.trans-mission.nl/webservices/TMSOnline.wsdl 3.1 Eigenschappen XML elementen: Een XML element kan de volgende eigenschappen bevatten: nillable = Veld moet gevuld zijn met een waarde (false=nee,true=ja) minOccurs = minimaal aantal keer dat element voor mag komen (0=niet verplicht, 1=verplicht) maxOccurs = maximaal aantal keer dat element voor mag komen (unbounded=oneindig aantal keer) 3.2 Inloggen: U moet bij het aanroepen van elke functie een object met logingegevens meesturen. In dit object zitten de volgende attributen: Username (op te vragen bij uw depot) Password (op te vragen bij uw depot) Depot (4-cijferig nummer van het depot waar u klant bij bent) Verlader (uw klantnummer) <xsd:complexType name="oLogin"> <xsd:all> <xsd:element type="xsd:string" name="username" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="password" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="depot" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="verlader" nillable="false" maxOccurs="1" minOccurs="1"/> </xsd:all> </xsd:complexType> Pagina 8 van 19
  • 9. TMS Online: Webservices 3.3 addOpdracht() 3.3.1 Aanvraag De functie wordt aangeroepen met het loginobject en een opdracht object. <message name="addOpdrachtRequest"> <part type="typens:oLogin" name="oLogin"/> <part type="typens:oOpdracht" name="oOpdracht"/> </message> Hieronder de definitie van een opdracht object: <xsd:complexType name="oOpdracht"> <xsd:all> <xsd:element type="xsd:string" name="type" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="nrorder" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="datum" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="afzender" nillable="true" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="afznaam" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="afznaam2" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="afzastraat" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="afzhuisnr" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="afzpostcode" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="afzplaats" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="afzland" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="geanaam" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="geanaam2" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="geastraat" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="geahuisnr" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="geapostcode" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="geaplaats" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="gealand" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="geatelefoon" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="geaemail" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="instructie" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="rembours" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="typens:ArrayofPlus" name="aPlus" maxOccurs="1" minOccurs="0"/> <xsd:element type="typens:ArrayofRegel" name="aRegel" maxOccurs="1" minOccurs="1"/> </xsd:all> </xsd:complexType> Een opdracht object bevat altijd 1 of meerdere regels. Deze zitten in het element aRegel. Dit element is een array met objecten van het type Regel: <xsd:complexType name="ArrayofRegel"> <xsd:complexContent> <xsd:restriction base="soapenc:Array"> <xsd:attribute wsdl:arrayType="typens:Regel[]" ref="soapenc:arrayType"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="Regel"> <xsd:all> <xsd:element type="xsd:string" name="nrcollo" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="vrzenh" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="aantalop" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="gewicht" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="referentie" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="omsverp" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="omruilen" nillable="true" maxOccurs="1" minOccurs="0"/> </xsd:all> </xsd:complexType> Pagina 9 van 19
  • 10. TMS Online: Webservices Een opdracht object kan meerdere plusdiensten (extra services bij een opdracht) bevatten. Deze zitten dan in het element aPlus. Dit element is een array met objecten van het type Plus: <xsd:complexType name="ArrayofPlus"> <xsd:complexContent> <xsd:restriction base="soapenc:Array"> <xsd:attribute wsdl:arrayType="typens:Plus[]" ref="soapenc:arrayType"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="Plus"> <xsd:all> <xsd:element type="xsd:string" name="kode" nillable="false" maxOccurs="1" minOccurs="1"/> </xsd:all> </xsd:complexType> 3.3.2 Resultaat Het resultaat van deze functie is een transport object: <message name="addOpdrachtResponse"> <part type="typens:oTransport" name="addOpdrachtResult"/> </message> Een transport object bestaat uit een uniek zendingnummer, en een pdf document gecodeerd als een base64 string: <xsd:complexType name="oTransport"> <xsd:all> <xsd:element type="xsd:string" name="zendingnr" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:base64Binary" name="labels" nillable="false" minOccurs="1" maxoccurs="1"/> </xsd:all> </xsd:complexType> Eventuele foutmeldingen die op kunnen treden zijn: 1. Onjuiste inloggegevens Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u aangemaakt 2. 1 of meerdere fouten in opdracht invoer Opdracht moet eerst worden gecorrigeerd voordat deze kan worden toegevoegd 3. Opslaan nieuwe opdracht niet gelukt Interne fout bij TransMission: wijst op een bug in de webservice bij TransMission en zal zo snel mogelijk worden uitgezocht opgelost nadat deze is voorgekomen Pagina 10 van 19
  • 11. TMS Online: Webservices 3.4 delOpdracht() 3.4.1 Aanvraag De functie wordt aangeroepen met het loginobject en het unieke zendingnummer dat in het transport object als resultaat van de functie getOpdracht() is geretourneerd: <message name="delOpdrachtRequest"> <part type="typens:oLogin" name="oLogin"/> <part type="xsd:string" name="nrzend"/> </message> 3.4.2 Resultaat Het resultaat van deze functie is de volgende tekst: “Opdracht {zendingnummer} verwijderd” Met op de plek van {zendingnummer} het unieke zendingnummer van de opdracht dat is verwijderd. <message name="delOpdrachtResponse"> <part type="xsd:string" name="delOpdrachtResult"/> </message> Eventuele foutmeldingen die op kunnen treden zijn: 1. Onjuiste inloggegevens Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u aangemaakt 2. Opdracht niet gevonden Er bestaat geen opdracht in het systeem van TransMission met het opgegeven zendingnummer 3. Opdracht kan niet worden verwijderd De opdracht is al verwerkt en kan niet meer worden verwijderd. Pagina 11 van 19
  • 12. TMS Online: Webservices 3.5 getLabels() 3.5.1 Aanvraag De functie wordt aangeroepen met het loginobject. Daarnaast wordt een array opgegeven met daarin alle zendingnummers waarvan de labels worden opgevraagd: <message name="getLabelsRequest"> <part type="typens:oLogin" name="oLogin"/> <part type="array" name="aNrzend"/> </message> 3.5.2 Resultaat Het resultaat van deze functie is een pdf document gecodeerd als een base64 string. <message name="getVerzendlijstResponse"> <part type="xsd:base64Binary" name="getLabelsResult"/> </message> Eventuele foutmeldingen die op kunnen treden zijn: 1. Onjuiste inloggegevens Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u aangemaakt 2. Opgevraagde labels niet gevonden Van de zendingnummers die zijn opgegeven kan geen openstaande (nog niet verzonden) opdracht worden gevonden. Er kunnen daarom geen labels worden aangemaakt. Pagina 12 van 19
  • 13. TMS Online: Webservices 3.6 getVerzendlijst() 3.6.1 Aanvraag De functie wordt aangeroepen met het loginobject: <message name="getVerzendlijstRequest"> <part type="typens:oLogin" name="oLogin"/> </message> 3.6.2 Resultaat Het resultaat van deze functie is een pdf document gecodeerd als een base64 string. <message name="getVerzendlijstResponse"> <part type="xsd:base64Binary" name="getVerzendlijstResult"/> </message> Eventuele foutmeldingen die op kunnen treden zijn: 1. Onjuiste inloggegevens Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u aangemaakt 2. Geen openstaande opdrachten Er zijn geen opdrachten (met een verzenddatum gelijk of kleiner dan de huidige datum) in het systeem van TransMission die nog niet zijn verwerkt. 3.7 sendOpdrachten() 3.7.1 Aanvraag De functie wordt aangeroepen met het loginobject: <message name="sendOpdrachtenRequest"> <part type="typens:oLogin" name="oLogin"/> </message> 3.7.2 Resultaat Het resultaat van deze functie is de volgende tekst: “Bestand aangemaakt” <message name="sendOpdrachtenResponse"> <part type="xsd:string" name="sendOpdrachtenResult"/> </message> Eventuele foutmeldingen die op kunnen treden zijn: 1. Onjuiste inloggegevens Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u aangemaakt 2. Geen openstaande opdrachten Er zijn geen opdrachten (met een verzenddatum gelijk of kleiner dan de huidige datum) in het systeem van TransMission die nog niet zijn verwerkt. Pagina 13 van 19
  • 14. TMS Online: Webservices 3.8 addVooraanmelding() 3.8.1 Aanvraag De functie wordt aangeroepen met een 4-cijferig depot nummer, een verlader(klant)nummer en een vooraanmelding object: <message name="addVooraanmeldingRequest"> <part type="xsd:string" name="depot"/> <part type="xsd:string" name="verlader"/> <part type="xsd:object" name="oVooraanmelding"/> </message> Hieronder de definitie van een vooraanmelding object: <xsd:complexType name="oVooraanmelding"> <xsd:all> <xsd:element type="xsd:string" name="pallet" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="colli" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="gewicht" nillable="false" maxOccurs="1" minOccurs="1"/> </xsd:all> </xsd:complexType> 3.8.2 Resultaat Het resultaat van deze functie is de volgende tekst: “Bedankt voor de vooraanmelding” <message name="addVooraanmeldingResponse"> <part type="xsd:string" name="result"/> </message> Eventuele foutmeldingen die op kunnen treden zijn: 1. Onjuist depot Het opgegeven depotnummer is niet bekend bij TransMission Pagina 14 van 19
  • 15. TMS Online: Webservices 3.9 getDefinities() 3.9.1 Aanvraag De functie wordt aangeroepen met het loginobject: <message name="getDefinitiesRequest"> <part type="typens:oLogin" name="oLogin" /> </message> 3.9.2 Resultaat Het resultaat van deze functie is een definitie object: <message name="getDefinitiesResponse"> <part type="typens:oDefinitie" name="oDefinities"/> </message> Een definitie object bestaat uit een array van elke benodigde stamtabel (Landen,Zendingsoorten,Plusdiensten,Verzendeenheden): <xsd:complexType name="oDefinitie"> <xsd:all> <xsd:element type="typens:ArrayofLandDef" name="aLandDef" maxOccurs="1" minOccurs="1"/> <xsd:element type="typens:ArrayofZndSrtDef" name="aZndSrtDef" maxOccurs="1" minOccurs="1"/> <xsd:element type="typens:ArrayofPlusDef" name="aPlusDef" maxOccurs="1" minOccurs="1"/> <xsd:element type="typens:ArrayofVrzenhDef" name="aVrzenhDef" maxOccurs="1" minOccurs="1"/> </xsd:all> </xsd:complexType> De array met landdefinities is als volgt opgebouwd: <xsd:complexType name="ArrayofLandDef"> <xsd:complexContent> <xsd:restriction base="soapenc:Array"> <xsd:attribute wsdl:arrayType="typens:LandDef[]" ref="soapenc:arrayType"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="LandDef"> <xsd:all> <xsd:element type="xsd:string" name="TMSKode" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="AltKode" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="Omschrijving" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="MaxGewicht" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="MaxRembours" nillable="false" maxOccurs="1" minOccurs="1"/> </xsd:all> </xsd:complexType> Pagina 15 van 19
  • 16. TMS Online: Webservices De array met definities van de zendingsoorten is als volgt opgebouwd: <xsd:complexType name="ArrayofZndSrtDef"> <xsd:complexContent> <xsd:restriction base="soapenc:Array"> <xsd:attribute wsdl:arrayType="typens:LandDef[]" ref="soapenc:arrayType"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="ZndSrtDef"> <xsd:all> <xsd:element type="xsd:string" name="TMSKode" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="Omschrijving" nillable="false" maxOccurs="1" minOccurs="1"/> </xsd:all> </xsd:complexType> De array met definities van de plusdiensten is als volgt opgebouwd: <xsd:complexType name="ArrayofPlusDef"> <xsd:complexContent> <xsd:restriction base="soapenc:Array"> <xsd:attribute wsdl:arrayType="typens:PlusDef[]" ref="soapenc:arrayType"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="PlusDef"> <xsd:all> <xsd:element type="xsd:string" name="TMSKode" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="Omschrijving" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="LandKode" nillable="false" maxOccurs="1" minOccurs="1"/> </xsd:all> </xsd:complexType> De array met definities van de verzendeenheden is als volgt opgebouwd: <xsd:complexType name="ArrayofVrzenhDef"> <xsd:complexContent><xsd:restriction base="soapenc:Array"> <xsd:attribute wsdl:arrayType="typens:VrzenhDef[]" ref="soapenc:arrayType"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="VrzenhDef"> <xsd:all> <xsd:element type="xsd:string" name="TMSKode" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="Omschrijving" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="Lengte" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="Breedte" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="MaxLengte" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="MaxHoogte" nillable="true" maxOccurs="1" minOccurs="0"/> <xsd:element type="xsd:string" name="MaxGewicht" nillable="true" maxOccurs="1" minOccurs="0"/> </xsd:all> </xsd:complexType> Eventuele foutmeldingen die op kunnen treden zijn: 1. Onjuiste inloggegevens Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u aangemaakt Pagina 16 van 19
  • 17. TMS Online: Webservices 3.10 getETA() 3.10.1 Aanvraag De functie wordt aangeroepen met het loginobject en een datum: <message name="getETARequest"> <part type="typens:oLogin" name="oLogin"/> <part type="xsd:date" name="datum"/> </message> De datum moet altijd volgens het formaat YYYY-mm-dd zijn (bv: 2012-02-08). 3.10.2 Resultaat Eventuele foutmeldingen die op kunnen treden zijn: 1. Onjuiste inloggegevens Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u aangemaakt 2. Er zijn geen ETA tijden bekend Er zijn (nog) geen ETA tijden bekend voor uw opdrachten, of er zijn geen opdrachten voor de opgegeven datum. 3.11 getStatus() 3.11.1 Aanvraag De functie wordt aangeroepen met het loginobject en een datum: <message name="getStatusRequest"> <part type="typens:oLogin" name="oLogin"/> <part type="xsd:date" name="datum"/> </message> De datum moet altijd volgens het formaat YYYY-mm-dd zijn (bv: 2012-02-08). 3.11.2 Resultaat Eventuele foutmeldingen die op kunnen treden zijn: 1. Onjuiste inloggegevens Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u aangemaakt 2. Er zijn geen ETA tijden bekend Er zijn (nog) geen ETA tijden bekend voor uw opdrachten, of er zijn geen opdrachten voor de opgegeven datum. Pagina 17 van 19
  • 18. TMS Online: Webservices 3.12 getAdresNL() 312.1 Aanvraag De functie wordt aangeroepen met het loginobject en een postcode: <message name="getAdresNLRequest"> <part type="typens:oLogin" name="oLogin" /> <part type="xsd:string" name="postcode" /> </message> 3.12.2 Resultaat <message name="getAdresNLResponse"> <part type="typens:oAdres" name="getAdresResult"/> </message> <xsd:complexType name="oAdres"> <xsd:all> <xsd:element type="xsd:string" name="straat" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="postcode" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="plaats" nillable="false" maxOccurs="1" minOccurs="1"/> </xsd:all> </xsd:complexType> Eventuele foutmeldingen die op kunnen treden zijn: 1. Onjuiste inloggegevens Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u aangemaakt 2. Onjuiste postcode (Moet bestaan uit 4 cijfers, 2 letters) Het formaat van de ingegeven postcode is onjuist, of betreft geen Nederlandse postcode. 3. Er is geen adres gevonden op deze postcode Onbekende postcode Pagina 18 van 19
  • 19. TMS Online: Webservices 3.12 getPkgebied() 312.1 Aanvraag De functie wordt aangeroepen met het loginobject: <message name="getPkgebiedRequest"> <part type="typens:oLogin" name="oLogin" /> </message> 3.12.2 Resultaat <message name="getPkgebiedResponse"> <part type="typens:ArrayofPkgebied" name="getPkgebiedResult"/> </message> De array met Pkgebied records is als volgt opgebouwd: <xsd:complexType name="ArrayofPkgebied"> <xsd:complexContent> <xsd:restriction base="soapenc:Array"> <xsd:attribute wsdl:arrayType="typens:Pkgebied[]" ref="soapenc:arrayType"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="Pkgebied"><xsd:all> <xsd:element type="xsd:string" name="Pkvan" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="Pktot" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="Kdland" nillable="false" maxOccurs="1" minOccurs="1"/> <xsd:element type="xsd:string" name="Nrdepaan" nillable="false" maxOccurs="1" minOccurs="1"/> </xsd:all> </xsd:complexType> Eventuele foutmeldingen die op kunnen treden zijn: 1. Onjuiste inloggegevens Logingegevens zijn niet correct, of uw depot heeft nog geen inlogaccount voor u aangemaakt Pagina 19 van 19