Spendint API - POST /sn_spend_intg/spendint/orderack
ユーザーがサードパーティカタログから製品を購入するときの注文情報を更新します。ユーザーがチェックアウトすると、購入ラインが作成され、購入の承認やその他のタスクを完了できます。
- 送信オーダー:オーダーヘッダーが含まれます。
- 送信発注品目:注文品目が含まれます。
サプライヤーは、これらのテーブルをクエリし、それらに対して保留中の注文をフェッチする必要があります。サプライヤーは、ServiceNowデータベースと統合するためのワークフロースタジオアクション用のスコープ対象アプリを作成する必要があります。
ヘッダーの場合は sysparm_query=supplier_id=<supplier_id>^purchase_order.status=20ヘッダーの場合は sysparm_query=purchase_order.supplier_id=<supplier_id>^purchase_order.status=20
- 該当する場合、発注書 (PO) と発注明細がエンタープライズリソースプランニング (ERP) に送信されます。
- 発注書と発注書明細は、顧客 ID、サプライヤー ID、発注書番号、注文日、発注金額、発注書金額通貨、発注明細を使用して、統合を通じてサードパーティに転送されます。
- サードパーティのカタログ統合と ERP の両方で確認メッセージが受信されるまで、発注書と発注書明細は [送信待ち] ステータスのままになります。確認を受信すると、ステータスが [注文済み] に更新されます。ERP 統合が関係しない場合、サードパーティ統合からの確認メッセージのみが必要です。
ステータステーブル
注文確認要求のステータスを確認するには、Table REST API を使用して ServiceNow データベースに対する REST 呼び出しを行います。API からの応答には、注文確認要求が失敗したレコードが一覧表示されます。注文確認応答の場合は、次のパラメーターを使用して注文確認エラーテーブルをクエリします。
sysparm_query=outbound_error.supplier_id=<supplier_id>^outbound_error.state=20
顧客 ID、サプライヤー ID、エラータイプ、一意のインポートセット ID、ステータスの詳細は、親エラーテーブルである送信ステータステーブルにあります。
URL 形式
/api/sn_spend_intg/spendint/orderack
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| mode | サードパーティ統合のための非同期モードと同期モードのサポート。 データタイプ:文字列 有効な値:
デフォルト:非同期 |
| 名前 | 説明 |
|---|---|
| 顧客_ID | 必須。顧客の識別子。 データタイプ:文字列 最大長:100 |
| order_number | 必須。この注文に対して顧客から提供された発注書番号。 データタイプ:文字列 最大長:40 |
| sales_order_lines | この注文の購入に対する一意の更新を含む受注明細を定義するオブジェクトのリスト。 データタイプ:アレイ |
| sales_order_lines.estimated_arrival_date | 注文の推定到着日。 データタイプ:文字列 最大長:40 形式:YYYY-MM-DD |
| sales_order_lines.line_number | 必須。特定の購入に対して顧客によって生成された発注書明細番号。 データタイプ:文字列 最大長:40 |
| sales_order_lines.sales_order_line_number | サプライヤーによって生成された受注明細行番号。この番号は、この購入のリビジョンにのみ必要です。 データタイプ:文字列 最大長:40 |
| sales_order_number | この注文に対してサプライヤーによって生成された番号または値。 データタイプ:文字列 最大長:40 |
| status_code | 必須。注文が正常に行われたかどうかを確認する送信済み注文のステータス。 データタイプ:文字列 有効な値:
|
| status_message | ステータスコードに添付されるメッセージ。たとえば、注文が正常に行われ、入荷待ちであることを示すメッセージなどです。 データタイプ:文字列 最大長:1000 |
| supplier_id | 必須。顧客が注文できるリセラーまたはサプライヤーの識別子。 データタイプ:文字列 最大長:100 |
| third_party_import_id | インポートされたデータのセットを一意に識別するために文字列値を渡すことをサードパーティに有効にする識別子。 データタイプ:文字列 最大長:100 |
ヘッダー
次の要求ヘッダーと応答ヘッダーは、この HTTP アクションにのみ適用されるか、別の方法でこのアクションに適用されます。
| ヘッダー | 説明 |
|---|---|
| 受容 | 応答本文のデータ形式。サポートされているタイプ: application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。
| ステータスコード | 説明 |
|---|---|
| 成功 | 成功。要求が正常に処理されました。 |
| 失敗 | 不成功。要求はエラーで処理されました。 |
応答本文のパラメーター (JSON)
これらの応答本文パラメーターは、同期モードでクエリされたときに受信されます。| 名前 | 説明 |
|---|---|
| error_response_body | 受注番号、受注明細行番号、およびエラーメッセージでリストされたエラーの説明。 データタイプ:アレイ |
| error_response_body.error_message | 詳細なエラーメッセージ。 データタイプ:文字列 |
| status_code | 「成功」や「失敗」などの応答ステータス。 データタイプ:文字列 |
cURL 要求
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"
}
]
}
]}
考えられる回答:
// 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"
}
]
}
]
}
}