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
Auprisaupris_[…].csv
Fastenergyfastenergy_[…].csv
EsyOilesy_[…].csv
Heizöl24h24_[…].csv
Heizpellets24p24_[…].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