Darstellung
Bestellungen (PUR02)
Transaktion: PUR02 Bestellungen
UI-Pfad: /purchases
Business-Zweck
PUR02 ist das Herzstück des Einkaufsmoduls. Hier werden Einkaufsbelege (PurHead) mit Positionen (PurItem) angelegt, freigegeben, versendet und für Wareneingang sowie Rechnungsprüfung bereitgestellt.
Partner integrieren Bestellungen typischerweise für:
- PO-Import aus ERP/Beschaffung – automatische Bestellerstellung
- Status-Rückmeldung – offene/gelieferte Mengen abrufen
- Wareneingangs-Vorbereitung – offene Positionen an WMS/INV02 liefern
- Dropshipping / Transfer – Bestellungen aus Vertriebsaufträgen (SAL)
Belegarten (PurDocType)
| type | Bedeutung | Partner-Relevanz |
|---|---|---|
| 0 | Anfrage | PUR90 Report |
| 1 | Rahmen-/Mengenkontrakt | Kontraktbezogene Abrufe |
| 2 | Bestellung | Standard-PO – createPurchase nutzt type=2 |
| 3 | Abruf | Abruf gegen Kontrakt |
| 8 | (Sonderbeleg) | Mandantenspezifisch |
Jeder PurDocType definiert u. a. Nummernkreis, Report, Liefer-Toleranz und ob MRP/Automatik-Mail aktiv ist.
Kernbegriffe
| Begriff | Bedeutung |
|---|---|
| PurHead | Einkaufsbelegkopf mit Vendor, Währung, Terminen |
| PurItem | Position: Material, Menge, Preis, Lager, Lieferstatus |
| deliveryStatus | 0=offen, 1=teilweise, 2=komplett, 3=überfällig |
| deliveredQuantity | Bereits gelieferte Menge (via INV02) |
| openQuantity | Restmenge = quantity − deliveredQuantity |
| refPurHead | Referenzbeleg (z. B. Abruf → Kontrakt) |
| containerNumber | Container-/Kommissionsnummer (Fulfillment) |
Fachlicher Lebenszyklus
- Anlage – manuell, aus Bestellanforderung (PUR06), MRP-Vorschlag oder API
- Positionsbefüllung – Material, Preis aus PurPrice, Lager, Liefertermin
- Freigabe/Versand – Druck, E-Mail (
isSend,isEmailSend, EDI) - Wareneingang – INV02 bucht gegen PurItem;
deliveredQuantitysteigt - Rechnungsprüfung – PUR04 verknüpft VerificationItem mit PurItem
- Abschluss – Position deliveryStatus=2 oder manuell via
closeItems
Partner-Szenarien
PO-Import aus ERP
POST /api/purHead/createPurchaseStrukturierter Import mit vendorNo, docNumber, currency, items[] (sku, quantity, price). RestLog protokolliert jeden Aufruf.
Alternativ für komplexere Belege:
POST /api/purHead/prepareAndCreateFlat-Map mit vendorNumber, docType, items[] – Codes werden intern auf IDs aufgelöst.
Offene Positionen für WMS
POST /api/purHead/getOpenPurItemsFilter nach docNumbers, vendor.id, containerNumbers, warehouse. Response enthält openQuantity, purItemId, Material, Lager.
Wareneingangsmaske vorbereiten
POST /api/purHead/purHeadIncomingGoodsLiefert pro PurHead-ID die buchungsrelevanten Materialdaten für INV02 (EAN, Chargenpflicht, Varianten, Einheiten).
Position manuell abschließen
POST /api/purHead/closeItemsSetzt isCompletedManually=true und schließt Restmengen – z. B. bei Teillieferung mit Abweichungsfreigabe.
Relevante PurHead-Felder
| Feld | Bedeutung |
|---|---|
docNumber | Belegnummer (Nummernkreis oder extern vorgegeben) |
docType | Belegart (PurDocType) |
vendor | Lieferant |
docDate / deliveryDate | Beleg- / Wunschlieferdatum |
currency / exchangeRate | Fremdwährung |
deliveryStatus / invoiceStatus | Kopf-Liefer-/Rechnungsstatus |
containerNumber | Container (Fulfillment-Kette) |
isCompletedManually | Manueller Gesamtabschluss |
Relevante PurItem-Felder
| Feld | Bedeutung |
|---|---|
material / itemCode | Artikelreferenz |
quantity / deliveredQuantity | Bestell- / Liefermenge |
price / priceUnit | EK-Preis und Preiseinheit |
warehouse / stockplace | Ziellager für Wareneingang |
vendorMatCode | Lieferanten-Artikelnummer |
salItemRequirements | Verknüpfung Vertriebsauftrag (PUR06) |
proposal | MRP-Vorschlag |
Auswirkungen im ERP
| Aktion | Auswirkung |
|---|---|
| Neue Bestellung | Offene Menge in StockList-Vorlauf (INV04) |
| Wareneingang INV02 | deliveredQuantity, deliveryStatus, Bestand |
| Rechnung PUR04 | invoicedQuantity, invoiceStatus |
| closeItems | Position als komplett markiert ohne WE |
Voraussetzungen
- Lieferant (PUR01) und Material (BAS02) vorhanden
- PurDocType type=2 für Standard-Bestellungen konfiguriert
- Lager/Lagerplatz für positionsbezogenen Wareneingang
Typische Fehlerquellen
- purHead.with.docNumber.already.exists – doppelte externe PO-Nummer
- vendor.not.found – unbekannte
vendorNo/vendorNumber - material variant not found with sku – SKU in
createPurchasenicht auflösbar - Deadlock bei createPurchase – Retry empfohlen (RestLog vorhanden)
Weiterlesen
- Technisch: PurHead API, PurItem API
- Wareneingang: INV Wareneingang, Incoming Goods API
- Preise: Einkaufsinfosätze (PUR03)
- Stammdaten: Artikelstamm (BAS02)