Spendint-API: /sn_spend_intg/Spendint/orderack VERÖFFENTLICHEN

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 3 Minuten Lesedauer
  • Aktualisiert Bestellinformationen, wenn ein Anwender ein Produkt aus einem Drittparteikatalog kauft. Wenn der Anwender auscheckt, wird eine Bestellposition erstellt, damit Genehmigungen oder andere Aufgaben für den Einkauf abgeschlossen werden können.

    Wenn eine Bestellung in generiert wird ServiceNowDatenbank, die Reihenfolge wird in die folgenden Tabellen übertragen:
    • Ausgehende Bestellung: Enthält den Auftragsheader.
    • Ausgehende Auftragsposition: Enthält die Auftragspositionen.

    Lieferanten müssen diese Tabellen abfragen und die für sie ausstehenden Aufträge abrufen. Lieferanten sollten eine bereichsbezogene App für erstellen Workflow-StudioAktionen für die Integration mit ServiceNowDatenbank.

    Fragen Sie die Tabellen mit den folgenden Parametern ab:
    • Sysparm_query=Supplier_ID=<supplier_id>^Purchase_order.Status=20 für Header
    • Sysparm_query=Purchase_order.Supplier_ID=<supplier_id>^Purchase_order.Status=20 für Header
    Wenn eine Bestellposition in eine Bestellposition konvertiert wird, werden die folgenden Prozesse ausgeführt:
    1. Die Bestellung und die Bestellposition werden gegebenenfalls an die Enterprise Resource Planning (ERP) übermittelt.
    2. Die Bestellung und die Bestellposition werden durch die Integration mit der Kunden-ID, der Lieferanten-ID, der Bestellnummer, dem Auftragsdatum, dem Bestellbetrag, der Bestellmenge, der Drittpartei übertragen. Währung des Bestellbetrags und Bestellpositionen.
    3. Die Bestellung und die Bestellposition verbleiben im Status „Ausstehende Übermittlung“, bis Bestätigungsnachrichten sowohl von der Drittpartei-Katalogintegration als auch vom ERP empfangen werden. Nach Erhalt der Bestätigung 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 Auftragsbestätigungsanforderung zu erfahren, führen Sie einen REST-Aufruf in durch ServiceNowDatenbank, die verwendet Tabelle REST-API. Die Antwort der API listet die Datensätze auf, bei denen die Auftragsbestätigungsanforderung fehlgeschlagen ist. Für eine Auftragsbestätigungsantwort fragen Sie die Tabelle „Auftragsbestätigungsfehler“ mit dem folgenden Parameter ab:

    Sysparm_query=outbound_error.Supplier_ID=<supplier_id>^outbound_error.State=20

    Die Details zur Kunden-ID, Lieferanten-ID, zum Fehlertyp, zur eindeutigen Importsatz-ID und zum Status finden Sie in der Tabelle „ausgehender Status“, der übergeordneten Fehlertabelle.

    URL-Format

    /api/sn_spend_intg/Spendint/orderack

    Unterstützte Anforderungsparameter

    Tabelle : 1. Pfad-Parameter
    Name Beschreibung
    Keine
    Tabelle : 2. Abfrageparameter
    Name Beschreibung
    Modus Unterstützung für asynchrone und synchrone Modi für die Integration von Drittparteien.

    Datentyp: Zeichenfolge

    Gültige Werte:
    • Asynchron: Asynchroner Modus.
    • Synchronisierung: Synchroner Modus.

    Standard: Asynchron

    Tabelle : 3. Anforderungstext-Parameter (XML oder JSON)
    Name Beschreibung
    customer_id Erforderlich. Bezeichner für den Kunden.

    Datentyp: Zeichenfolge

    Maximale Länge: 100

    order_number Erforderlich. Vom Kunden für diese Bestellung bereitgestellte Bestellnummer.

    Datentyp: Zeichenfolge

    Maximale Länge: 40

    Sales_order_lines Liste von Objekten, die die Kundenauftragspositionen mit eindeutigen Updates für die Einkäufe in diesem Auftrag definieren.

    Datentyp: Array

    "sales_order_lines":[
      {
        "estimated_arrival_date": "String",
        "line_number": "String",
        "sales_order_line_number": "String"
      }
    ]
    sales_order_lines.estimated_arrival_date Geschätztes 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 eine bestimmte Bestellung generiert wurde.

    Datentyp: Zeichenfolge

    Maximale Länge: 40

    sales_order_lines.sales_order_line_number Vertriebsauftragspositionsnummer, die vom Lieferanten generiert wurde. Diese Nummer ist nur für Überarbeitungen dieses Einkaufs erforderlich.

    Datentyp: Zeichenfolge

    Maximale Länge: 40

    Sales_order_number Nummer oder Wert, der vom Lieferanten für diesen Auftrag generiert wird.

    Datentyp: Zeichenfolge

    Maximale Länge: 40

    status_code Erforderlich. Status der übermittelten Bestellung, der bestätigt, ob die Bestellung erfolgreich erteilt wurde.

    Datentyp: Zeichenfolge

    Gültige Werte:
    • Bestätigt: Bestellung erfolgreich erteilt.
    • Abgelehnt: Bestellung nicht erteilt.
    status_message Nachricht, die an einen Statuscode angehängt ist. Beispielsweise könnte die Nachricht lauten, dass die Bestellung erfolgreich aufgegeben wurde und sich im Lieferrückstand befindet.

    Datentyp: Zeichenfolge

    Maximale Länge: 1000

    Supplier_ID Erforderlich. Bezeichner für den Händler oder Lieferanten, bei dem der Kunde Bestellungen aufgeben kann.

    Datentyp: Zeichenfolge

    Maximale Länge: 100

    third_party_import_id Bezeichner, mit dem eine Drittpartei einen Zeichenfolgenwert übergeben kann, 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 werden auf diese Aktion in einer bestimmten Weise angewendet.

    Tabelle : 4. Anforderungskopfzeilen.
    Header Beschreibung
    Akzeptieren Datenformat des Antworttexts. Unterstützte Typen: application/jsonOder application/xml.

    Standard: application/json

    Hinweis:
    Nur die application/jsonDas Datenformat wird für das Beschaffungsintegrations-Framework unterstützt.
    Tabelle : 5. Antwort-Header
    Header Beschreibung
    Keine

    Statuscodes

    Die folgenden Statuscodes gelten für diese HTTP-Aktion.

    Tabelle : 6. Statuscodes
    Statuscode Beschreibung
    Erfolg Erfolgreich. Die Anforderung wurde erfolgreich verarbeitet.
    Fehler Nicht Erfolgreich. Die Anforderung wurde mit Fehlern verarbeitet.

    Antworttext-Parameter (JSON)

    Diese Antworttextparameter werden empfangen, wenn sie im synchronen Modus abgefragt werden.
    Name Beschreibung
    Error_response_body Beschreibung der Fehler, aufgeführt 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"
                        }
                    ]
                }
            ]
        }
    }