Metainformationen zur Seite
Übersicht | X-oil | Menü | Programme | Glossar | Themen | Update
Schnittstellenbeschreibung Web-Aufträge
Allgemein
Die Schnittstelle beinhaltet zwei Satztypen ORDER
und ADDRESS
. Pro Auftrag muss mindestens ein ADDRESS
Satz vorhanden sein. Im ORDER
befinden sich alle Informationen zur Bestellung, wie Datum, Fristen, Artikel, Gesamtbestellmenge und Preis. Im ADDRESS
Satz sind alle Inforamtionen zum Kunden hinterlegt, wie Adresse, Telefonnummern, Adressetyp (Rechnungsadresse, Lieferadresse) und evtl. Teilmenge.
Reihenfolge der Satztypen:
- ORDER
- ADDRESS (mehrere möglich)
CSV-Dateien Namensgebung
Das Freigabe-Verzeichnis auf dem X-oil Server befindet sich unter word/texte/Internet
. Für die Dateinamen der Importdateien gibt es folgende Namensrichtlinien:
Onlineportal | Schnittstellenname |
---|---|
Aupris | aupris_[…].csv |
Fastenergy | fastenergy_[…].csv |
EsyOil | esy_[…].csv |
Heizöl24 | h24_[…].csv |
Heizpellets24 | p24_[…].csv |
Es können mehrere Importschnittstellen im Abholverzeichnis stehen. Jede Schnittstelle wird einmalig eingelesen.
Aufbau ORDER
Nr. | Feldname | Typ | Erklärung |
---|---|---|---|
01 | id | Integer | Die Bestellungsnummer (vergeben vom Portal) |
02 | customerId | Integer | Die Kundennummer des Kunden, der die Bestellung aufgegeben hat (vergeben vom Portal) |
03 | dealerId | Integer | Die Händlernummer des Händlers, für den die Daten angefragt werden (vergeben vom Portal) |
04 | productName | String | Der Name des bestellten Produkts |
05 | productUnit | Double | Die Einheitsgröße, in der das Produkt verkauft wird |
06 | productUnitName | String | Produkteinheit Text („Liter“, „Kilo“) |
07 | productUnitPrice | Double | Der Preis des Produkts zum Kaufdatum pro Produkteinheit |
08 | quantity | Integer | Die Gesamtmenge der bestellten Ware |
09 | netPrice | Double | Nettopreis der Gesamtbestellung |
10 | taxRate | Double | Der anfallende Mehrwertsteuersatz |
11 | comment | String | Kommentar des Kunden |
12 | timeStamp | DateTime | Datum / Uhrzeit des Bestellungseingangs |
13 | deliveredQuantity | Integer | Die bereits bestätigte Menge (falls vorhanden, ansonsten 0) |
14 | deliveredStations | Interger | Die Anzahl der bereits bestätigten Lieferstationen (falls vorhanden, ansonsten 0) |
15 | deliveredTimeStamp | DateTime | Timestamp der Auftragsbestätigung. (falls vorhanden, ansonsten datetime default) |
16 | isDelivered | Boolean | True / False - Kann nur False sein, wenn bei (15), (14) und (13) die Default-Werte gesetzt sind |
17 | stations | Integer | Anzahl der Lieferstationen. Gleich der Anzahl der Adressen mit dem type Delivery |
18 | termsOfDelivery | String | Die vom Portal bzw. Händler bestimmte textuelle Darstellung der Lieferzeit |
19 | termsOfPayment | String | Die vom Portal bzw. Händler bestimmte textuelle Darstellung der Zahlungsart |
20 | tubeLength | String | Die vom Portal bzw. Händler bestimmte textuelle Darstellung der Schlauchlänge |
21 | truckSize | String | Die vom Portal bzw. Händler bestimmte textuelle Darstellung der Tankwagengröße |
22 | fixedRateName | String | Die vom Portal bzw. Händler bestimmte textuelle Darstellung einer Pauschale |
23 | fixedRateAmount | Double | Die Höhe der Pauschale (falls vorhanden, ansonsten 0) |
24 | productId | Integer | Die vom Portal intern verwendete Produkt ID (falls vorhanden bzw. erlaubt, ansonsten’0’) |
25 | termsOfDeliveryId | Integer | Die vom Portal intern verwendete ID für die Lieferbedingungen (falls vorhanden bzw. erlaubt ansonsten 0) |
26 | emailAddress | String | Email-Adresse des Kunden, der die Bestellung aufgegeben hat |
27 | firstDeliveryDate | DateTime | Frühester Lieferbeginn Datum und Uhrzeit |
28 | lastDeliveryDate | DateTime | Spätester Lieferbeginn Datum und Uhrzeit |
29 | strictDeliveryDate | String | Wenn vom Händler Wunschtermine angenommen werden, dann hier die Beschreibung / Angabe des Termins |
30 | strictTimeSlot | String | Wenn von Händler und Portal eine Spezifizierung der Lieferzeit erlaubt ist, dann hier die Beschreibung/Angabe des Termins |
31 | token1 | String | Token vom OnlinePortal |
32 | token2 | String | Token vom OnlinePortal |
Aufbau ADDRESS
Nr. | Feldname | Typ | Erklärung |
---|---|---|---|
01 | id | Integer | Die Adressnummer (ID) (vergeben vom Portal) |
02 | orderId | Interger | Die ID der Bestellung, zu der diese Adresse gehört |
03 | companyName | String | 1. Zeile des Firmennamens |
04 | companyName2 | String | 2. Zeile des Firmennamens |
05 | firstName | String | Der Vorname der Person. Kann mehrere durch Leerzeichen getrennte Namen beinhalten |
06 | lastName | String | Der Nachname der Person |
07 | currentTitle1 | String | Herr / Frau - Wenn nichts angegeben, kann das Feld leer bleiben |
08 | currentTitle2 | String | Dr. / Prof. / Prof. Dr. - Wenn nichts angegeben, kann das Feld leer bleiben |
09 | streetName | String | Der Name der Straße mit Hausnummer |
10 | zipCode | String | Postleitzahl |
11 | city | String | Ort und Ortsteil |
12 | type | String | Delivery/Billing - type ist im Kontext zur Bestellung wichtig. Wenn eine Billing-Adresse existiert, bezahlt diese die Rechnung. Ansonsten bezahlt jede Delivery-Adresse selbst |
13 | addressType | Integer | Numerische Darstellung von type(12). 1=Delivery, 0=Billing |
14 | station | Integer | Ein bei 1 beginnender Zähler, der alle Delivery-Adressen innerhalb einer Bestellung eindeutig identifiziert. Ist es eine Billing-Adresse, so besitzt diese die Nummer, der vorhandenen und zugeordneten Delivery-Adresse, ansonsten 0 |
15 | objectNumber | String | Objektnummer |
16 | phonePrefix | String | Die Vorwahl eines Festnetzanschlusses |
17 | phoneNumber | String | Die Telefonnummer eines Festnetzanschlusses oder eine Mobilfunknummer (Die Vorwahl ist dann leer) |
18 | faxPrefix | String | Die Vorwahl des Faxnummer oder einer zweiten Telefonnummer |
19 | faxNumber | String | Die Faxnummer, eine zweite Telefonnummer oder eine vollständige Mobilfunknummer |
20 | needStoppingRestriction | Boolean | True / False - Abhängig davon, ob Halteverbotsschilder benötigt werden oder nicht |
21 | deliveryAmount | Integer | Die Menge des Produkts in für diese Adresse |
22 | dateOfBirth | date | Bei Ratekauf/Finanzierung (z.B EsyOil) wird ein Geburtstag übergeben |
Beispiel JSON
- orders.json
[ { "id": 0, "customerId": 0, "dealerId": 0, "productName": "String", "productUnit": 0.0, "productUnitName": "String", "productUnitPrice": 0.0, "quantity": 0, "netPrice": 0.0, "taxRate": 0.0, "comment": "String", "timeStamp": "2018-03-27T13:28:41.891Z", "deliveredQuantity": 0, "deliveredStations": 0, "deliveredTimeStamp": "2018-03-27T13:28:41.891Z", "isDelivered": true, "stations": 0, "termsOfDelivery": "String", "termsOfPayment": "String", "tubeLength": "String", "truckSize": "String", "fixedRateName": "String", "fixedRateAmount": 0.0, "productId": 0, "termsOfDeliveryId": 0, "emailAddress": "String", "firstDeliveryDate": "2018-03-27T13:28:41.891Z", "lastDeliveryDate": "2018-03-27T13:28:41.891Z", "strictDeliveryDate": "String", "strictTimeSlot": "String", "addresses": [ { "id": 0, "orderId": 0, "companyName": "String", "companyName2": "String", "firstName": "String", "lastName": "String", "currentTitle1": "HERR", "currentTitle2 ": "Prof.Dr.", "streetName": "String", "zipCode": "String", "city": "String", "type": "String", "addressType": 0, "station": 0, "objectNumber": "String", "phonePrefix": "String", "phoneNumber": "String", "faxPrefix": "String", "faxNumber": "String", "needStoppingRestriction": true, "deliveryAmount": 0 } ] } ]
Übersicht | X-oil | Menü | Programme | Glossar | Themen | Update