Spendint API - POST /sn_spend_intg/spendint/orderack
Aktualisiert Bestellinformationen für den Fall, dass ein Benutzer ein Produkt aus einem Drittpartei-Katalog kauft. Wenn der Benutzer den Bezahlvorgang durchführt, wird eine Bestellposition erstellt, damit Genehmigungen und andere Aufgaben für den Kauf abgeschlossen werden können.
- Ausgehende Bestellung: Enthält den Auftragsheader.
- Ausgehende Bestellposition: Enthält die Auftragspositionen.
Lieferanten müssen diese Tabellen abfragen und die für sie ausstehenden Bestellungen abrufen. Lieferanten sollten eine bereichsbezogene App für Workflow-Studio-Aktionen erstellen, um die Integration mit der ServiceNow-Datenbank durchzuführen.
sysparm_query=supplier_id=<supplier_id>^purchase_order.status=20 for headersysparm_query=purchase_order.supplier_id=<supplier_id>^purchase_order.status=20 for header
- Die Bestellung und die Bestellposition werden ggf. an Enterprise Resource Planning (ERP) übermittelt.
- Die Bestellung und die Bestellposition werden mit der Kunden-ID, der Lieferanten-ID, die Kaufauftragsnummer, dem Bestelldatum, dem Bestellbetrag, der Bestellbetragwährung und den Bestellpositionen über die Integration an die Drittpartei übertragen.
- Die Bestellung und die Bestellposition verbleiben im Status „Ausstehende Übermittlung“, bis sowohl von der Drittpartei-Katalogintegration als auch von ERP eine Bestätigungsnachricht eingeht. Nachdem die Bestätigung eingegangen ist, wird der Status in „Bestellt“ aktualisiert. Wenn keine ERP-Integration beteiligt ist, ist eine Bestätigungsnachricht nur von der Drittpartei-Integration erforderlich.
Statustabellen
Um den Status der Anforderung zur Auftragsbestätigung zu erfahren, führen Sie in der ServiceNow-Datenbank mit der Tabelle „REST-APIs“ einen REST-Aufruf durch. Die Antwort der API listet die Datensätze auf, bei denen die Anforderung zur Auftragsbestätigung fehlgeschlagen ist. Um eine Auftragsbestätigungsantwort zu erhalten, fragen Sie die Tabelle „Auftragsbestätigungsfehler“ mit dem folgenden Parameter ab:
sysparm_query=outbound_error.supplier_id=<supplier_id>^outbound_error.state=20
Die Detailinformationen zu Kunden-ID, Lieferanten-ID, Fehlertyp, eindeutiger Import Set-ID und Status finden Sie in der Tabelle „Ausgehender Status“, der übergeordneten Fehlertabelle.
URL-Format
/api/sn_spend_intg/spendint/orderack
Unterstützte Anforderungsparameter
| Name | Beschreibung |
|---|---|
| Keine |
| Name | Beschreibung |
|---|---|
| Modus | Unterstützung des asynchronen und des synchronen Modus für die Drittanbieterintegration. Datentyp: Zeichenfolge Gültige Werte:
Standard: async |
| Name | Beschreibung |
|---|---|
| customer_id | Erforderlich. Bezeichner für den Kunden. Datentyp: Zeichenfolge Maximale Länge: 100 |
| order_number | Erforderlich. Bestellnummer, die der Kunde für diesen Auftrag angegeben hat. Datentyp: Zeichenfolge Maximale Länge: 40 |
| sales_order_lines | Liste der Objekte, die die Kundenauftragspositionen mit eindeutigen Aktualisierungen für die Käufe in diesem Auftrag definieren. Datentyp: Array |
| sales_order_lines.estimated_arrival_date | Voraussichtliches Ankunftsdatum der Bestellung. Datentyp: Zeichenfolge Maximale Länge: 40 Format: JJJJ-MM-TT |
| sales_order_lines.line_number | Erforderlich. Bestellpositionsnummer, die vom Kunden für einen bestimmten Kauf generiert wurde. Datentyp: Zeichenfolge Maximale Länge: 40 |
| sales_order_lines.sales_order_line_number | Verkaufsauftragspositionsnummer, die vom Lieferanten generiert wurde. Diese Nummer ist nur für Überarbeitungen dieses Kaufs erforderlich. Datentyp: Zeichenfolge Maximale Länge: 40 |
| sales_order_number | Nummer oder Wert, die/der vom Lieferanten für diesen Auftrag generiert wird. Datentyp: Zeichenfolge Maximale Länge: 40 |
| status_code | Erforderlich. Status des übermittelten Auftrags, der bestätigt, ob der Auftrag erfolgreich erteilt wurde. Datentyp: Zeichenfolge Gültige Werte:
|
| status_message | Nachricht, die an einen Statuscode angehängt ist. Beispielsweise könnte die Nachricht lauten, dass der Auftrag erfolgreich erteilt wurde und im Lieferrückstand ist. Datentyp: Zeichenfolge Maximale Länge: 1.000 |
| supplier_id | Erforderlich. Bezeichner für den Reseller oder Lieferanten, bei dem der Kunde Bestellungen aufgeben kann. Datentyp: Zeichenfolge Maximale Länge: 100 |
| third_party_import_id | Bezeichner, der es einer Drittpartei ermöglicht, einen Zeichenfolgenwert zu übergeben, um einen Satz importierter Daten eindeutig zu identifizieren. Datentyp: Zeichenfolge Maximale Länge: 100 |
Header
Die folgenden Anforderungs- und Antwort-Header gelten nur für diese HTTP-Aktion oder sie gelten für diese Aktion auf besondere Weise.
| Kopfzeile | Beschreibung |
|---|---|
| Akzeptieren | Datenformat des Antworttexts. Unterstützte Typen: application/json oder application/xml. Standard: application/json |
| Kopfzeile | Beschreibung |
|---|---|
| Keine |
Statuscodes
Die folgenden Statuscodes gelten für diese HTTP-Aktion.
| Statuscode | Beschreibung |
|---|---|
| Erfolg | Erfolgreich. Die Anforderung wurde erfolgreich verarbeitet. |
| Fehler | Nicht erfolgreich. Die Anforderung wurde mit Fehlern verarbeitet. |
Parameter des Antwort-Haupttexts (JSON)
Diese Antworttextparameter werden bei einer Abfrage im synchronen Modus empfangen.| Name | Beschreibung |
|---|---|
| error_response_body | Beschreibung der Fehler, aufgelistet nach Verkaufsauftragsnummer, Verkaufsauftragspositionsnummer und Fehlermeldung. Datentyp: Array |
| error_response_body.error_message | Detaillierte Fehlermeldung. Datentyp: Zeichenfolge |
| status_code | Antwortstatus wie „Erfolg“ oder „Fehler“. Datentyp: Zeichenfolge |
cURL-Anforderung
curl "https://instance.service-now.com/api/sn_spend_intg/spendint/orderack" \
--request POST \
--header "Accept:application/json" \
--user 'username':'password'
{"root":[{
"customer_id": "ACME CORP",
"supplier_id": "SUP-123456",
"third_party_import_id": "undefined",
"order_number": "PO08903323",
"sales_order_number": "SO03323212",
"status_code": "CONFIRMED",
"status_message": "BACKORDERED",
"sales_order_lines":[
{
"line_number": "POL6789876",
"sales_order_line_number": "SOL5678909",
"estimated_arrival_date": "YYYY-MM-DD"
}
]
}
]}
Mögliche Antworten:
// Success response:
{
"result": {
"response": "success"
}
}
// Error response:
{
"result": {
"response": [
{
"customer_id": "ACME CORP",
"supplier_id": "SUP-123456",
"third_party_import_id": "undefined",
"status_code": "failure",
"error_response_body": [
{
"sales_order_number": "SO03323212",
"sales_order_line_number": "SOL5678909",
"error_message": "Field Value empty/Formatting issue Purchase order number\nField Value empty/Formatting issue Purchase order line number\n"
}
]
}
]
}
}