Format cXML Datei - OCI Freigabe

Gültig ab Version 8.27.0

OCI Bestellfreigabe via cXML

Funktionsbeschreibung

Wenn ein Kunde im angebundenen Beschaffungssystem (z.B. Coupa, SAP Ariba) eine Bestellung aufgibt, wird diese im Shop als "geparkte" OCI-Bestellung angelegt und wartet auf ihre Freigabe durch das Beschaffungssystem.

Die Freigabe erfolgt, indem das Beschaffungssystem ein cXML-Dokument an den Shop sendet. Darin enthalten sind die finale Bestellfreigabe, Adressdaten und die Zuordnung zu den Bestellpositionen.

Endpoint

Die Einlieferung einer "geparkten" OCI-Bestellung, die auf ihre Freigabe wartet, findet über einen POST-Request auf folgende URL statt:

wide760/oci.php]]>

Der cXML-Inhalt wird als POST-Body oder als Formular-Parameter `~xmlDokument` gesendet.


Zuordnung zur Bestellung

Die Verbindung zwischen dem cXML-Dokument und der geparkten Bestellung im Shop erfolgt über den (Bestellcode).

Der OrderCode wird aus dem Feld SupplierPartID der einzelnen Bestellpositionen (ItemOut) gelesen. Dieser Code entspricht dem Bestellcode, der beim Anlegen der Bestellung im Shop vergeben wurde.

Zusätzlich wird die (orderID) des Beschaffungssystems übernommen und in der Bestellung als Referenz gespeichert.


Verarbeitete Bereiche im cXML-Dokument

1. Externe Bestellnummer (Buyer Order Number)

wide760 Request > OrderRequest > OrderRequestHeader[@orderID]]]>

Das Attribut orderID des OrderRequestHeader-Elements enthält die Bestellnummer aus dem Beschaffungssystem.

OrderRequestHeader[@orderID]

external_order_code

Externe Bestellnummer des Beschaffungssystems

OrderRequestHeader[@orderID]

OCI_BuyerOrderNumber (Order-Info)

Zusätzliche Speicherung als Order-Info


2. OrderCode der Bestellpositionen (Zuordnung zum Shop)

wide760 Request > OrderRequest > ItemOut > ItemID > SupplierPartID]]>

Jede ItemOut-Position enthält eine SupplierPartID, die dem Bestellcode der geparkten Bestellung im Shop entspricht.

ItemOut > ItemID > SupplierPartID

Bestellcode (z.B. YFHUYZ) - identifiziert die Bestellung im Shop

ItemOut[@quantity]

Menge der Position

Bei mehreren Positionen wird jede SupplierPartID einzeln verarbeitet und die zugehörige Bestellung freigegeben.


3. Teilenummer (Part Number)

wide760 Request > OrderRequest > ItemOut > ItemID > SupplierPartAuxiliaryID]]>

ItemOut > ItemID > SupplierPartAuxiliaryID

OCI_PARTN (Order-Info)

Zusätzliche Teilenummer/Referenz


4. Lieferadresse (ShipTo)

wide760 Request > OrderRequest > OrderRequestHeader > ShipTo > Address]]>

Die Lieferadresse wird aus dem ShipTo-Block gelesen und in der Bestellung aktualisiert:

Address > Name

order_DeliverAdressCompany

Firmenname

PostalAddress > DeliverTo

order_DeliverAdressName

Empfänger / Ansprechpartner

PostalAddress > Street

order_DeliverAdressStreet

Strasse und Hausnummer

PostalAddress > PostalCode

order_DeliverAdressZIP

Postleitzahl

PostalAddress > City

order_DeliverAdressTown

Stadt

PostalAddress > Country[@isoCountryCode]

order_DeliverAdressCountryCode

Ländercode (z.B. DE), Standard: DE

Address > Email

order_DeliverAdressEMail

E-Mail-Adresse

Address > Phone

order_DeliverAdressTel

Telefonnummer


5. Rechnungsadresse (BillTo)

wide760 Request > OrderRequest > OrderRequestHeader > BillTo > Address]]>

Die Rechnungsadresse wird aus dem BillTo-Block gelesen und in der Bestellung aktualisiert:

Address > Name

InvoiceAdressCompany1

Firmenname

PostalAddress > DeliverTo

InvoiceAdressName

Empfänger / Ansprechpartner

PostalAddress > Street

InvoiceAdressStreet

Strasse und Hausnummer

PostalAddress > PostalCode

InvoiceAdressZIP

Postleitzahl

PostalAddress > City

InvoiceAdressTown

Stadt

PostalAddress > Country[@isoCountryCode]

InvoiceAdressCountryCode

Ländercode (z.B. DE), Standard: DE

Address > Email

InvoiceAdressEMail

E-Mail-Adresse

Address > Phone

InvoiceAdressTel

Telefonnummer


Antwort (Response)

Der Endpoint antwortet mit einer JSON-Response:

jsonwide760

jsonwide760" }]]>

Moegliche Fehlermeldungen:

  • invalid xml, cannot be interpreted - Das XML-Dokument konnte nicht gelesen werden

  • invalid xml, unknown document type - Das Dokumentformat wurde nicht erkannt

  • invalid status - Es konnte kein gültiger Bestellcode gefunden werden


Beispiel cXML-Dokument

Das folgende Beispiel zeigt ein vollständiges cXML-Dokument mit Testdaten, das für die Bestellfreigabe verwendet werden kann:

xmlwide760
testfirma 123456789 testfirma testfirma-secret Beschaffungssystem 1.0
125,50
Musterfirma GmbH Max Mustermann Musterstrasse 42 Musterstadt 12345 Deutschland max.mustermann@musterfirma.de +49 123 4567890
Musterfirma GmbH - Buchhaltung Buchhaltung Musterstrasse 42 Musterstadt 12345 Deutschland buchhaltung@musterfirma.de +49 123 4567891
Max Mustermann max.mustermann@musterfirma.de
ABCDEF REF-2026-001 1,25 Visitenkarten 85x55mm, 4/4-farbig EA
]]>