支出 API

  • リリースバージョン: Australia
  • 更新日 2026年03月12日
  • 所要時間:55分
  • Spendint API は、カタログ、価格、在庫状況、注文、出荷、請求書の情報をサードパーティからServiceNowインスタンスにプッシュするエンドポイントを提供します。この API は Source-to-Pay 統合フレームワーク アプリケーションの一部です。

    この API は、調達統合フレームワーク (com.glide.sn_spend_intg) ストアアプリケーションを必要とし、 sn_spend_intg 名前空間内で提供されます。詳細については、「Procurement File Transfer Framework」を参照してください。

    この API にアクセスするには、sn_spend_intg.procurement_integrator ロールが必要です。

    Spendint API - POST /sn_spend_intg/spendint/catalog

    サプライヤーが複数のカタログを投稿して、サプライヤー製品、モデル製品、契約、および価格設定レコードを作成できるようにします。

    カタログ API 統合では、サードパーティカタログからデータを受信すると、次のことができます。
    1. 新しいサードパーティカテゴリを作成し、これらのカテゴリをモデルカテゴリにマッピングします。
      • 利用可能な場合は、国連標準製品およびサービスコード (UNSPSC) を使用してからカテゴリ名を使用します。
      • UNSPSC が利用できない場合は、カテゴリ名のみを使用します。
    2. サードパーティカテゴリをモデルカテゴリにマッピングした後、メーカー品番 (MPN) を使用して、既存の製品モデルを検索します (利用可能な場合)。
      1. MPN の製品モデルが見つかった場合は、変更を加えて製品モデルを更新してから、製品モデルに関連するサプライヤー製品を作成または更新します。
      2. MPN の製品モデルが存在しない場合は、次の操作を行います。
        1. 製品モデルクラスは、通常、製品のサードパーティカテゴリによって参照されるモデルカテゴリで使用できます。この製品モデルクラスを使用して、製品モデルを作成する必要がある製品モデルテーブル (ハードウェア、ソフトウェア、消耗品など) を取得します。利用可能な製品モデルクラスがない場合は、ベース製品モデルテーブルに製品モデルを作成します。
        2. 正しい製品モデルクラスが特定されたら、次のように正しいクラスに新しい製品モデルを作成します。
          • メーカー、パブリッシャー、またはプロバイダーは、製品モデルのメーカーにマッピングする必要があります。
          • API の製品名は、製品モデルの名前にマッピングする必要があります。
          • API の MPN はモデル番号を更新する必要があります。
          • API からの製品説明によって、製品モデルの説明が更新されます。
          • モデルカテゴリは、サードパーティカテゴリレコードで参照されている製品カテゴリで更新する必要があります。
          • 製品カテゴリは、サードパーティカテゴリレコードで参照されている製品カテゴリで更新する必要があります。
          • API に代替製品に値がある場合は、現在の製品モデルと他の製品モデルの間に代替製品レコードを作成します。
          • API の互換性のある製品に値がある場合は、現在の製品モデルと他の製品モデルの間で互換性のある製品レコードを作成します。
          • API の製品属性は、製品モデルの製品属性関連リストで作成または更新する必要があります。
    3. 製品モデルが利用可能な場合は、サプライヤー品番を使用して、製品モデルに関連するサプライヤー製品を作成または更新します。

    サードパーティマッピング

    サードパーティのカテゴリ、モデル、および単位のマッピングを実行するには、次のテーブルを使用します。
    • サードパーティカテゴリ:ShoppingHub アドミニストレーターが内部の既存のモデルカテゴリとマッピングできるように、すべてのサードパーティカテゴリレコードを保存します。
    • サードパーティモデルマッピング:製品モデルとサードパーティモデルカテゴリ間のすべてのマッピング情報を保存します。
    • サードパーティユニット:ShoppingHub アドミニストレーターがサプライヤー製品ユニットとマッピングできるように、すべてのサードパーティユニットレコードを保存します。
    • サードパーティユニットマッピング:製品モデルとサードパーティユニット間のすべてのマッピング情報を保存します。
    注:
    サードパーティ統合製品は、サードパーティカテゴリとサードパーティユニットの両方が適切にマッピングされている場合に自動公開されます。

    サプライヤー製品の販売日

    サプライヤー製品は販売終了日に達すると製造中止となり、カタログに公開されなくなります。[サプライヤー製品] フォームの [販売開始日 ] フィールドと [販売終了日] フィールドは、カタログ API からのサードパーティ統合によって入力されます。

    ステータステーブル

    製品の一括インポート要求のステータスを確認するには、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/catalog

    サポートされている要求パラメーター

    表 : 1. パスパラメーター
    名前 説明
    なし
    表 : 2. クエリパラメーター
    名前 説明
    mode サードパーティ統合のための非同期モードと同期モードのサポート。

    データタイプ:文字列

    有効な値:
    • async:非同期モード。
    • sync:同期モード。

    デフォルト:非同期

    表 : 3. 要求本文パラメーター (XML または JSON)
    名前 説明
    顧客_ID 顧客の識別子。

    データタイプ:文字列

    最大長:100

    catalog_id 顧客が購入できるカタログコンテンツの識別子。

    データタイプ:文字列

    最大長:100

    製品 作成または更新する製品を定義するオブジェクトのリスト。各トランザクションには 1000 個の製品制限があります。

    データタイプ:アレイ

    "products": [
      {
        "available_units": "String",
        "available_for_country": [Array],
        "bundled_components": [Array],
        "contract_agreement": {Object},
        "delivery_time": "String",
        "images": [Array],
        "manufacturer": "String",
        "mpn": "String",
        "parent_bundle": "String",
        "product_attributes": {Object},
        "product_category_name": "String",
        "product_description": "String",
        "product_name": "String",
        "sku": "String",
        "unit": "String",
        "unspsc": "String",
      }
    ]
    products.available_units 在庫のある製品に必要です。この値は、この製品で使用可能なユニットの数量を示します。

    データタイプ:文字列

    最大長:40

    products.available_for_country サプライヤー製品を購入できる国コードのリスト。国が指定されていない場合は、どの国のユーザーでも製品を購入できます。

    データタイプ:アレイ

    "available_for_country": ["US","IN","GB"]
    products.bundled_components 製品バンドルをカタログペイロードの一部として送信するシナリオでのみ有効であり、親バンドルペイロードにのみ適用されます。この値には、子バンドルコンポーネントへの参照が含まれています。子バンドルコンポーネントの MPN と数量のリストは、ここで維持されます。
    注:
    バンドル内に同じ子バンドルコンポーネントを複数回追加できるため、入力された数量が同じ子バンドルコンポーネント間の差別化要素となります。
    子バンドルコンポーネントとその詳細 (MPN と数量) は、同じサプライヤーにマッピングする必要があります。

    データタイプ:アレイ

    "bundled_components": [
      {
        "mpn": "String",
        "quantity": "String"
      }
    ]
    products.contract_agreement 製品の契約の詳細。
    注:
    これは、子バンドルコンポーネントには必要ありません。

    データタイプ: オブジェクト

    "contract_agreement": {
      "contract_end_date": "String",
      "contract_number": "String",
      "contract_start_date": "String",
      "negotiated_currency ": "String",
      "negotiated_price": "String"
    }
    products.contract_agreement.contract_end_date 契約期間が終了する日付。

    データタイプ:文字列

    最大長:40

    形式:YYYY-MM-DD

    products.contract_agreement.contract_number 必須です。製品に関連付けられているアクティブな契約の番号。

    データタイプ:文字列

    最大長:100

    products.contract_agreement.contract_start_date 契約期間が開始される日付。

    データタイプ:文字列

    最大長:40

    形式:YYYY-MM-DD

    products.contract_agreement.negotiated_currency 必須です。交渉価格の通貨。

    データタイプ:文字列

    最大長:40

    products.contract_agreement.negotiated_price 必須です。サプライヤーまたはリセラーとの契約を通じて交渉された製品の単価。

    データタイプ:文字列

    最大長:40

    products.delivery_time 製品を顧客に出荷するのにかかる推定日数。この値は日数を表し、整数である必要があります。

    データタイプ:文字列

    最大長:40

    products.images サプライヤー製品の画像 URL を指定する文字列のリスト。

    データタイプ:アレイ

    products.manufacturer 必須です。製品を製造、公開、または提供する会社。これは製品のサプライヤーまたは再販業者ではありません。

    データタイプ:文字列

    最大長:100

    products.mpn 必須です。メーカー、パブリッシャー、またはプロバイダーによって提供される製品の識別子。
    注:
    SKU 値が利用可能な場合、これはリセラーの親バンドルには必要ありません。

    データタイプ:文字列

    最大長:100

    products.parent_bundle 製品バンドルをカタログペイロードの一部として送信するシナリオでのみ有効であり、子バンドルコンポーネントペイロードにのみ適用されます。子バンドルコンポーネントの場合、親への参照はここで維持されます。親 MPN と SKU の値もここで設定されます。

    データタイプ:文字列

    最大長:100

    products.product_attributes 製品属性を定義するキーと値のペアのリストです。例:「色」:「スペースグレー」。製品には複数の属性を使用できます。ただし、価格設定または在庫状況に影響を与える属性のみを API を介して指定する必要があります。

    データタイプ: オブジェクト

    products.product_category_name 必須です。unspscプロパティを設定しない場合に入力する名前。この名前は、製品が属するカテゴリです。このカテゴリ名は、コマース シナリオで製品を購入するために使用できます。たとえば、電源タップ製品はオフィス機器カテゴリに属することができます。

    データタイプ:文字列

    最大長:100

    products.product_description コマースエクスペリエンス内で購入者に表示される製品の完全な説明。
    注:
    特に子バンドルコンポーネントがある製品バンドルカタログアイテムの場合、ここではサプライヤーをできるだけ詳しく説明することをお勧めします。

    データタイプ:文字列

    最大長:65000

    products.product_name 必須です。製品の名前。

    データタイプ:文字列

    最大長:1000

    products.sku 必須です。サプライヤーによって販売される製品を一意に識別するためにサプライヤーによって生成された番号。

    データタイプ:文字列

    最大長:100

    products.unit 必須です。サプライヤーが製品を販売する単位またはレート。たとえば、個数や時間などです。

    データタイプ:文字列

    最大長:40

    products.unspsc 必須です。product_category_nameプロパティを設定していない場合に入力する識別子。この識別子は、製品が属するカテゴリの UNSPSC です。たとえば、UNSPSC コード 43210000 は、製品カテゴリ「コンピューター」の識別子です。

    データタイプ:文字列

    最大長:100

    supplier_id 必須です。顧客が注文できるリセラーまたはサプライヤーの識別子。

    データタイプ:文字列

    最大長:100

    third_party_import_id インポートされたデータのセットを一意に識別するために文字列値を渡すことをサードパーティに有効にする識別子。

    データタイプ:文字列

    最大長:100

    ヘッダー

    次の要求ヘッダーと応答ヘッダーは、この HTTP アクションにのみ適用されるか、別の方法でこのアクションに適用されます。

    表 : 4. 要求ヘッダー
    ヘッダー 説明
    承認 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml

    デフォルト: application/json

    注:
    調達統合フレームワークでは、 application/json データ形式のみがサポートされています。
    表 : 5. 応答ヘッダー
    ヘッダー 説明
    なし

    ステータスコード

    この HTTP アクションには、次のステータスコードが適用されます。

    表 : 6. ステータスコード
    ステータスコード 説明
    成功 成功。要求が正常に処理されました。
    失敗 不成功。要求はエラーで処理されました。

    応答本文のパラメーター (JSON)

    これらの応答本文パラメーターは、同期モードでクエリされたときに受信されます。
    名前 説明
    error_response_body sku、mpn、およびエラーメッセージ別に一覧表示されるエラーの説明。

    データタイプ:アレイ

    error_response_body.error_message 詳細なエラーメッセージ。

    データタイプ:文字列

    status_code 「成功」や「失敗」などの応答ステータス。

    データタイプ:文字列

    cURL 要求

    curl "https://instance.service-now.com/api/sn_spend_intg/spendint/catalog" \
    --request POST \
    --header "Accept:application/json" \
    --user 'username':'password'
    {"root": [{
      "customer_id": "AB-1234323",
      "catalog_id": "ACME CORP-12347898",
      "supplier_id": "SUP-123456",
      "third_party_import_id": "DELL1234567",
      "products": [
        {
          "product_name": "Apple MacBook Pro 13 Core i7",
          "mpn": "Z0WQ-20004301931",
          "sku": "55788741",
          "manufacturer": "Apple",
          "product_category_name": "Computer",
          "parent_bundle": "920-0045362002",
          "bundled_components": {
            "mpn": "Z0WQ-20004301931",
            "quantity": "4",
           },
          "unspsc": "43211500",
          "product_description": "Apple MacBook Pro 13 Core i7 2.8GHz 16GB 512GB - Touch Bar - Space Gray",
          "product_attributes": {
            "Color": "Space Grey",
            "RAM": "16GB",
            "Screen Size": "13inch"
          },
          "images": ["http://test123.image1.png", "http://test123.image2.jpeg"],
          "unit": "Each",
          "available_units": "4",
          "available_for_country": ["US","IN","GB"],
          "delivery_time": "4",
          "contract_agreement": {
            "contract_number": "34567892",
            "contract_start_date": "YYYY-MM-DD",
            "contract_end_date": "YYYY-MM-DD",
            "negotiated_price": "456",
            "negotiated_currency ": "USD"
          }
        }
      ]
    }
    ]}
    

    考えられる回答:

    // Success response:
    {
        "result": {
            "response": "success"
        }
    }
    
    // Error response:
    {
        "result": {
            "response": [
                {
                    "customer_id": "AB-1234323",
                    "supplier_id": "SUP-123456",
                    "third_party_import_id": "DELL1234567",
                    "status_code": "failure",
                    "error_response_body": [
                        {
                            "sku": "55788741",
                            "mpn": "Z0WQ-20004301931",
                            "error_message": "Field Value empty/Formatting issue Negotiated currency \n"
                        }
                    ]
                }
            ]
        }
    }

    Spendint API - POST /sn_spend_intg/spendint/price

    サプライヤー製品レコードの価格設定を更新します。

    サプライヤー製品レコードの価格設定が利用可能な場合、API は製品 SKU を使用して既存のサプライヤー製品を検索します。一致するサプライヤー製品が存在する場合、対応する契約価格が更新されます。一致するサプライヤー製品が見つからない場合は、価格設定を更新しようとしている製品が存在しないことを示すエラーメッセージが生成されます。

    ステータステーブル

    価格インポート要求のステータスを確認するには、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/price

    サポートされている要求パラメーター

    表 : 7. パスパラメーター
    名前 説明
    なし
    表 : 8. クエリパラメーター
    名前 説明
    mode サードパーティ統合のための非同期モードと同期モードのサポート。

    データタイプ:文字列

    有効な値:
    • async:非同期モード。
    • sync:同期モード。

    デフォルト:非同期

    表 : 9. 要求本文パラメーター (XML または JSON)
    名前 説明
    catalog_id 必須です。顧客が購入できるカタログコンテンツの識別子。

    データタイプ:文字列

    最大長:100

    顧客_ID 必須です。顧客の識別子。

    データタイプ:文字列

    最大長:100

    製品 作成または更新する製品を定義するオブジェクトのリスト。各トランザクションには 1000 個の製品制限があります。

    データタイプ:アレイ

    "products": [
      {
        "contract_agreement": {Array},
        "sku": "String"
      }
    ]
    products.contract_agreement 製品の契約の詳細。

    データタイプ: オブジェクト

    "contract_agreement": {
      "contract_end_date": "String",
      "contract_number": "String",
      "contract_start_date": "String",
      "negotiated_currency ": "String",
      "negotiated_price": "String"
    }
    products.contract_agreement.contract_end_date 契約期間が終了する日付。

    データタイプ:文字列

    最大長:40

    形式:YYYY-MM-DD

    products.contract_agreement.contract_number 必須です。製品に関連付けられているアクティブな契約の番号。

    データタイプ:文字列

    最大長:100

    products.contract_agreement.contract_start_date 契約期間が開始される日付。

    データタイプ:文字列

    最大長:40

    形式:YYYY-MM-DD

    products.contract_agreement.negotiated_currency 必須です。交渉価格の通貨。

    データタイプ:文字列

    最大長:40

    products.contract_agreement.negotiated_price 必須です。サプライヤーまたはリセラーとの契約を通じて交渉された製品の単価。

    データタイプ:文字列

    最大長:40

    products.sku 必須です。サプライヤーによって販売される製品を一意に識別するためにサプライヤーによって生成された番号。

    データタイプ:文字列

    最大長:100

    supplier_id 必須です。顧客が注文できるリセラーまたはサプライヤーの識別子。

    データタイプ:文字列

    最大長:100

    third_party_import_id インポートされたデータのセットを一意に識別するために文字列値を渡すことをサードパーティに有効にする識別子。

    データタイプ:文字列

    最大長:100

    ヘッダー

    次の要求ヘッダーと応答ヘッダーは、この HTTP アクションにのみ適用されるか、別の方法でこのアクションに適用されます。

    表 : 10. 要求ヘッダー
    ヘッダー 説明
    承認 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml

    デフォルト: application/json

    注:
    調達統合フレームワークでは、 application/json データ形式のみがサポートされています。
    表 : 11. 応答ヘッダー
    ヘッダー 説明
    なし

    ステータスコード

    この HTTP アクションには、次のステータスコードが適用されます。

    表 : 12. ステータスコード
    ステータスコード 説明
    成功 成功。要求が正常に処理されました。
    失敗 不成功。要求はエラーで処理されました。

    応答本文のパラメーター (JSON)

    これらの応答本文パラメーターは、同期モードでクエリされたときに受信されます。
    名前 説明
    error_response_body SKU とエラーメッセージごとに一覧表示されるエラーの説明。

    データタイプ:アレイ

    error_response_body.error_message 詳細なエラーメッセージ。

    データタイプ:文字列

    status_code 「成功」や「失敗」などの応答ステータス。

    データタイプ:文字列

    cURL 要求

    curl "https://instance.service-now.com/api/sn_spend_intg/spendint/price" \
    --request POST \
    --header "Accept:application/json" \
    --user 'username':'password'
    {"root": [{
      "customer_id": "ACME CORP",
      "catalog_id": "AB-1234323",
      "supplier_id": "SUP-123456",
      “third_party_import_id”: “DEL789876",
      "products": [
        {
          "sku": "5578874",
          "contract_agreement": {
            "contract_number": "34567892",
            "contract_start_date": "YYYY-MM-DD",
            "contract_end_date": "YYYY-MM-DD",
            "negotiated_price": "456",
            "negotiated_currency ": "USD"
          }
        }
      ]
    }
    ]}
    

    考えられる回答:

    // Success response:
    {
        “result”: {
            “response”: “success”
        }
    }
    
    // Error response:
    {
        “result”: {
            “response”: [
                {
                    “customer_id”: “ACME CORP”,
                    “supplier_id”: “SUP-123456”,
                    “third_party_import_id”: “DEL789876",
                    “status_code”: “failure”,
                    “error_response_body”: [
                        {
                            “sku”: “5578874”,
                            “error_message”: “The product for which you are trying to update pricing does not exist\nField Value empty/Formatting issue Negotiated currency\nField Value empty/Formatting issue Contract start date\nField Value empty/Formatting issue Contract end date\n”
                        }
                    ]
                }
            ]
        }
    }

    Spendint API - POST /sn_spend_intg/spendint/availability

    サプライヤー製品レコードの可用性を更新します。

    サプライヤー製品レコードが利用可能な場合、API は製品 SKU を使用して既存のサプライヤー製品を検索します。一致するサプライヤー製品が存在する場合、対応する available_units フィールドが更新されます。一致するサプライヤー製品が見つからない場合は、可用性を更新しようとしている製品が存在しないことを示すエラーメッセージが生成されます。

    ステータステーブル

    可用性更新要求のステータスを確認するには、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/availability

    サポートされている要求パラメーター

    表 : 13. パスパラメーター
    名前 説明
    なし
    表 : 14. クエリパラメーター
    名前 説明
    mode サードパーティ統合のための非同期モードと同期モードのサポート。

    データタイプ:文字列

    有効な値:
    • async:非同期モード。
    • sync:同期モード。

    デフォルト:非同期

    表 : 15. 要求本文パラメーター (XML または JSON)
    名前 説明
    catalog_id 必須です。顧客が購入できるカタログコンテンツの識別子。

    データタイプ:文字列

    最大長:100

    顧客_ID 必須です。顧客の識別子。

    データタイプ:文字列

    最大長:100

    製品 更新する製品を定義するオブジェクトのリスト。各トランザクションには 1000 個の製品制限があります。

    データタイプ:アレイ

    "products": [
      {
        "available_units": "String",
        "sku": "String",
        "unit": "String"
      }
    ]
    products.available_units 在庫のある製品に必要です。この製品で使用可能なユニットの数。

    データタイプ:文字列

    最大長:40

    products.sku 必須です。サプライヤーが販売する製品を一意に識別するためにサプライヤーによって生成された番号。

    データタイプ:文字列

    最大長:100

    products.unit 必須です。サプライヤーが製品を販売する単位またはレート。たとえば、個数や時間などです。

    データタイプ:文字列

    最大長:100

    supplier_id 顧客が注文できるリセラーまたはサプライヤーの識別子。

    データタイプ:文字列

    最大長:100

    third_party_import_id インポートされたデータのセットを一意に識別するための文字列値を渡すことをサードパーティに許可します。

    データタイプ:文字列

    最大長:100

    ヘッダー

    次の要求ヘッダーと応答ヘッダーは、この HTTP アクションにのみ適用されるか、別の方法でこのアクションに適用されます。

    表 : 16. 要求ヘッダー
    ヘッダー 説明
    承認 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml

    デフォルト: application/json

    注:
    調達統合フレームワークでは、 application/json データ形式のみがサポートされています。
    表 : 17. 応答ヘッダー
    ヘッダー 説明
    なし

    ステータスコード

    この HTTP アクションには、次のステータスコードが適用されます。

    表 : 18. ステータスコード
    ステータスコード 説明
    成功 成功。要求が正常に処理されました。
    失敗 不成功。要求はエラーで処理されました。

    応答本文のパラメーター (JSON)

    これらの応答本文パラメーターは、同期モードでクエリされたときに受信されます。
    名前 説明
    error_response_body SKU とエラーメッセージごとに一覧表示されるエラーの説明。

    データタイプ:アレイ

    error_response_body.error_message 詳細なエラーメッセージ。

    データタイプ:文字列

    status_code 「成功」や「失敗」などの応答ステータス。

    データタイプ:文字列

    cURL 要求

    curl "https://instance.servicenow.com/api/sn_spend_intg/spendint/availability" \
    --request POST \
    --header "Accept:application/json" \
    --user 'username':'password'
    {"root": [{
      "customer_id": "AB-1234323",
      "catalog_id": "ACME CORP",
      "supplier_id": "SUP-123456",
      "third_party_import_id": "DEL6789876",
      "products": [
        {
          "sku": "5578874",
          "unit": "Each",
          "available_units": "20"
        }
      ]
    }
    ]}
    

    考えられる回答:

    // Success response:
    {
        "result": {
            "response": "success"
        }
    }
    
    Error response: 
    {
        "result": {
            "response": [
                {
                    "customer_id": "AB-1234323",
                    "supplier_id": "SUP-123456",
                    "third_party_import_id": "DEL6789876",
                    "status_code": "failure",
                    "error_response_body": [
                        {
                            "sku": "5578874",
                            "error_message": "The product for which you are trying to update availability does not exist\nField Value empty/Formatting issue Unit\n"
                        }
                    ]
                }
            ]
        }
    }

    Spendint API - POST /sn_spend_intg/spendint/orderack

    ユーザーがサードパーティカタログから製品を購入するときの注文情報を更新します。ユーザーがチェックアウトすると、購入ラインが作成され、購入の承認やその他のタスクを完了できます。

    発注書 (PO) が ServiceNow データベースで生成されると、その注文は次のテーブルにプッシュされます。
    • 送信オーダー:オーダーヘッダーが含まれます。
    • 送信発注品目:注文品目が含まれます。

    サプライヤーは、これらのテーブルをクエリし、それらに対して保留中の注文をフェッチする必要があります。サプライヤーは、ServiceNowデータベースと統合するためのワークフロースタジオアクション用のスコープ対象アプリを作成する必要があります。

    次のパラメーターを使用してテーブルをクエリします。
    • ヘッダーの場合は sysparm_query=supplier_id=<supplier_id>^purchase_order.status=20
    • ヘッダーの場合は sysparm_query=purchase_order.supplier_id=<supplier_id>^purchase_order.status=20
    購入明細が発注明細に変換されると、次のプロセスが実行されます。
    1. 該当する場合、発注書 (PO) と発注明細がエンタープライズリソースプランニング (ERP) に送信されます。
    2. 発注書と発注書明細は、顧客 ID、サプライヤー ID、発注書番号、注文日、発注金額、発注書金額通貨、発注明細を使用して、統合を通じてサードパーティに転送されます。
    3. サードパーティのカタログ統合と 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

    サポートされている要求パラメーター

    表 : 19. パスパラメーター
    名前 説明
    なし
    表 : 20. クエリパラメーター
    名前 説明
    mode サードパーティ統合のための非同期モードと同期モードのサポート。

    データタイプ:文字列

    有効な値:
    • async:非同期モード。
    • sync:同期モード。

    デフォルト:非同期

    表 : 21. 要求本文パラメーター (XML または JSON)
    名前 説明
    顧客_ID 必須です。顧客の識別子。

    データタイプ:文字列

    最大長:100

    order_number 必須です。この注文に対して顧客から提供された発注書番号。

    データタイプ:文字列

    最大長:40

    sales_order_lines この注文の購入に対する一意の更新を含む受注明細を定義するオブジェクトのリスト。

    データタイプ:アレイ

    "sales_order_lines":[
      {
        "estimated_arrival_date": "String",
        "line_number": "String",
        "sales_order_line_number": "String"
      }
    ]
    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 必須です。注文が正常に行われたかどうかを確認する送信済み注文のステータス。

    データタイプ:文字列

    有効な値:
    • 確認済み:注文が正常に行われました。
    • rejected:注文が行われていません。
    status_message ステータスコードに添付されるメッセージ。たとえば、注文が正常に行われ、入荷待ちであることを示すメッセージなどです。

    データタイプ:文字列

    最大長:1000

    supplier_id 必須です。顧客が注文できるリセラーまたはサプライヤーの識別子。

    データタイプ:文字列

    最大長:100

    third_party_import_id インポートされたデータのセットを一意に識別するために文字列値を渡すことをサードパーティに有効にする識別子。

    データタイプ:文字列

    最大長:100

    ヘッダー

    次の要求ヘッダーと応答ヘッダーは、この HTTP アクションにのみ適用されるか、別の方法でこのアクションに適用されます。

    表 : 22. 要求ヘッダー
    ヘッダー 説明
    承認 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml

    デフォルト: application/json

    注:
    調達統合フレームワークでは、 application/json データ形式のみがサポートされています。
    表 : 23. 応答ヘッダー
    ヘッダー 説明
    なし

    ステータスコード

    この HTTP アクションには、次のステータスコードが適用されます。

    表 : 24. ステータスコード
    ステータスコード 説明
    成功 成功。要求が正常に処理されました。
    失敗 不成功。要求はエラーで処理されました。

    応答本文のパラメーター (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"
                        }
                    ]
                }
            ]
        }
    }

    Spendint API - POST /sn_spend_intg/spendint/shipment

    このエンドポイントを使用して、サードパーティからの購入の更新を受け入れます。

    データを受領したら、販売注文明細行番号を使用して出荷データを発注書明細行と照合する必要があります。追跡番号を使用して、発注書明細に関連する既存の出荷詳細レコード 検索できます。そのようなレコードが見つからない場合は、新しい出荷詳細レコードを作成します。出荷データの発注書または発注明細が存在しない場合は、この出荷の発注書が存在しないことを示すエラーメッセージが表示されます。
    注:
    発注書 (PO) と発注書 (PO) 明細行が [送信待ち] ステータスで、販売注文明細行と販売注文明細行が入力されていない場合、サードパーティ リセラーからの出荷と請求書の転記は許可されません。これは、発注書と発注書明細のステータスが [注文済み] の場合にのみ許可されます。また、出荷と請求書の転記に順次制限はありません。

    ステータステーブル

    出荷要求のステータスを確認するには、テーブル 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/shipment

    サポートされている要求パラメーター

    表 : 25. パスパラメーター
    名前 説明
    なし
    表 : 26. クエリパラメーター
    名前 説明
    mode サードパーティ統合のための非同期モードと同期モードのサポート。

    データタイプ:文字列

    有効な値:
    • async:非同期モード。
    • sync:同期モード。

    デフォルト:非同期

    表 : 27. 要求本文パラメーター (XML または JSON)
    名前 説明
    顧客_ID 顧客の識別子。

    データタイプ:文字列

    最大長:100

    order_number 必須です。この注文に対して顧客から提供された発注書番号。

    データタイプ:文字列

    最大長:40

    sales_order_number 必須です。この注文に対してサプライヤーによって生成された番号または値。

    データタイプ:文字列

    最大長:40

    shipment_lines 資産のシリアル番号、IMEI 番号、および資産タグの詳細を含めることができる出荷ラインのリスト。

    データタイプ:アレイ

    "shipment_lines": [
      {
        "actual_shipment_date": "String",
        "estimated_arrival_date": "String",
        "line_number": "String",
        "planned_shipment_date": "String",
        "product_details": [Array],
        "sales_order_line_number": "String",
        "shipping_address": {Object},
        "shipping_carrier": "String",
        "shipment_quantity": "String",
        "ship_to": "String",
        "tracking_number": "String"
      }
    ]
    shipment_lines.actual_shipment_date 出荷がサプライヤーの場所から出荷される日付。

    データタイプ:文字列

    最大長:40

    形式:YYYY-MM-DD

    shipment_lines.estimated_arrival_date 出荷が指定された場所に到着する予定の日付。

    データタイプ:文字列

    最大長:40

    形式:YYYY-MM-DD

    shipment_lines.line_number 必須です。特定の購入に対して顧客が生成した発注書明細番号。

    データタイプ:文字列

    最大長:40

    shipment_lines.planned_shipment_date 出荷がサプライヤーの場所から出荷される予定の日付。

    データタイプ:文字列

    最大長:40

    形式:YYYY-MM-DD

    shipment_lines.product_details 出荷される製品に関する詳細を定義するオブジェクトのリスト。オプションには、シリアル番号、IMEI 番号、資産タグの詳細が含まれます。

    データタイプ:アレイ

    "product_details": [
      {
        "asset_tag": "String",
        "imei": "String",
        "serial_number": "String"
      }
    ]
    shipment_lines.product_details.asset_tag 出荷された製品の資産タグ。

    データタイプ:文字列

    最大長:100

    shipment_lines.product_details.imei 出荷された製品の IMEI 番号。

    データタイプ:文字列

    最大長:100

    shipment_lines.product_details.serial_number 必須です。出荷された製品のシリアル番号。

    データタイプ:文字列

    最大長:100

    shipment_lines.sales_order_line_number サプライヤーによって生成された受注明細行番号。この番号は、この購入のリビジョンにのみ必要です。

    データタイプ:文字列

    最大長:40

    shipment_lines.shipping_address 製品の出荷先の住所。

    データタイプ: オブジェクト

    "shipping_address":
      {
        "city": "String",
        "country": "String",
        "name": "String",
        "state": "String",
        "street": "String",
        "zip_code": "String"
      }
    shipment_lines.shipping_address.city 製品の出荷先の市区町村の名前。

    データタイプ:文字列

    最大長:1000

    shipment_lines.shipping_address.country 製品の出荷先の国。

    データタイプ:文字列

    最大長:40

    shipment_lines.shipping_address.name 製品の出荷先の顧客の名前。

    データタイプ:文字列

    最大長:1000

    shipment_lines.shipping_address.state 製品の出荷先の都道府県。

    データタイプ:文字列

    最大長:1000

    shipment_lines.shipping_address.street 製品の出荷先の番地の名前。

    データタイプ:文字列

    最大長:1000

    shipment_lines.shipping_address.zip_code 製品の出荷先の郵便番号または PIN コード。

    データタイプ:文字列

    最大長:40

    shipment_lines.shipment_quantity 必須です。物理的な商品として出荷される製品の数。番号には、出荷されている製品の数量が含まれている必要があります。

    データタイプ:文字列

    最大長:40

    shipment_lines.shipping_carrier FedEx、UPS、USPS などの指定された場所に製品を配送する配送業者。

    データタイプ:文字列

    最大長:100

    shipment_lines.ship_to 製品の配送先の受取人の名前。

    データタイプ:文字列

    最大長:100

    shipment_lines.tracking_number 購入の全部または一部の配送業者から提供される追跡番号。

    データタイプ:文字列

    最大長:100

    supplier_id 必須です。顧客が注文できるリセラーまたはサプライヤーの識別子。

    データタイプ:文字列

    最大長:100

    supplier_shipment_number 必須です。この出荷に対して生成された識別番号。通常、この数値はエンタープライズリソースプランニング (ERP) または注文追跡システムによって生成されます。

    データタイプ:文字列

    最大長:100

    third_party_import_id インポートされたデータのセットを一意に識別するために文字列値を渡すことをサードパーティに有効にする識別子。

    データタイプ:文字列

    最大長:100

    ヘッダー

    次の要求ヘッダーと応答ヘッダーは、この HTTP アクションにのみ適用されるか、別の方法でこのアクションに適用されます。

    表 : 28. 要求ヘッダー
    ヘッダー 説明
    承認 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml

    デフォルト: application/json

    注:
    調達統合フレームワークでは、 application/json データ形式のみがサポートされています。
    表 : 29. 応答ヘッダー
    ヘッダー 説明
    なし

    ステータスコード

    この HTTP アクションには、次のステータスコードが適用されます。

    表 : 30. ステータスコード
    ステータスコード 説明
    成功 成功。要求が正常に処理されました。
    失敗 不成功。要求はエラーで処理されました。

    応答本文のパラメーター (JSON)

    これらの応答本文パラメーターは、同期モードでクエリされたときに受信されます。
    名前 説明
    error_response_body 受注明細行番号、受注番号、仕入先出荷番号、およびエラーメッセージで一覧表示されたエラーの説明。

    データタイプ:アレイ

    error_response_body.error_message 詳細なエラーメッセージ。

    データタイプ:文字列

    status_code 「成功」や「失敗」などの応答ステータス。

    データタイプ:文字列

    cURL 要求

    curl "https://instance.service-now.com/api/sn_spend_intg/spendint/shipment" \
    --request POST \
    --header "Accept:application/json" \
    --user 'username':'password'
    {"root":[{
      "customer_id" : "ACME CORP",
      "supplier_id" : "SUP-123456",
      "third_party_import_id": "DEL2134324",
      "supplier_shipment_number" : "TN-YU67898723",
      "order_number": "PO0001002",
      "sales_order_number": "SO00223002",
      "shipment_lines": [
        {
          "line_number": "POL0001005",
          "sales_order_line_number": "SOL0231325",
          "shipment_quantity": "4",
          "shipping_carrier": "FedEx",
          "tracking_number": "E-901290092",
          "shipping_address":
            {
              "name" : "1640 Camino Del Rio North #202, San Diego,CA",
              "street" : "1640 Camino Del Rio North",
              "city" : "San Diego",
              "state" : "CA",
              "zip_code" : "92108-1512",
              "country" : "US"
            },
          "ship_to": "John doe",
          "planned_shipment_date": "YYYY-MM-DD",
          "actual_shipment_date": "YYYY-MM-DD",
          "estimated_arrival_date": "YYYY-MM-DD",
          "product_details": [
            {
              "serial_number": "FL1234-23242319001",
              "imei": "2134890294",
              "asset_tag": ""
            },{
              "serial_number": "FL1234-23242319110",
              "imei": "245499003",
              "asset_tag": ""
            }
          ]
        }
      ]
    }
    ]}

    考えられる回答:

    // Success response:
    {
        "result": {
            "response": "success"
        }
    }
    
    // Error response:
    {
        "result": {
            "response": [
                {
                    "customer_id": "ACME CORP",
                    "supplier_id": "SUP-123456",
                    "third_party_import_id": "DEL2134324",
                    "status_code": "failure",
                    "error_response_body": [
                        {
                            "sales_order_line_number": "SOL0231325",
                            "sales_order_number": "SO00223002",
                            "supplier_shipment_number": "TN-YU67898723",
                            "error_message": "The purchase order for this shipment does not exist\nThe purchase order line for this shipment does not exist\n"
                        }
                    ]
                }
            ]
        }
    }

    Spendint API - POST /sn_spend_intg/spendint/invoice

    サードパーティプロバイダーからの請求書を受け入れます。

    発注書 (PO) と発注書 (PO) 明細行が [送信待ち] ステータスで、販売注文明細行と販売注文明細行が入力されていない場合、サードパーティ リセラーからの出荷と請求書の転記は許可されません。これは、発注書と発注書明細のステータスが [注文済み] の場合にのみ許可されます。また、出荷と請求書の転記に順次制限はありません。

    請求書が送信されると、請求書と請求書明細行が発注書にマッピングされます。マッピングに成功すると、請求書のステータスは次のように設定されます。
    • 配送待ち:受領書が存在しない場合、注文の一部が配送されたか、請求書の承認が必要です。
    • 請求確認済み:発注書が配達され、請求された金額が発注書の合計金額と一致した場合。
    • レビューが必要:発注書が納品され、請求金額が発注書の合計金額と一致しない場合。

    明細品目に対して有効な請求書が転記された場合、同じ請求書を更新することはできません。

    指定された請求書に発注書番号がない場合、請求書は却下され、指定された請求書の 1 つ以上の発注書番号がないことを示すエラーメッセージが表示されます。提供された請求書に発注書番号があるが、発注書と一致しない場合、または発注書が存在しない場合は、エラーメッセージが表示されます。このメッセージには、1 つ以上の請求書に、請求書の発注書番号と一致する対応する発注書がないことが示されます。また、サードパーティのリセラーから送信された請求金額が請求金額と一致しない場合、請求書は却下されます。

    ステータステーブル

    請求書要求のステータスを確認するには、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/invoice

    サポートされている要求パラメーター

    表 : 31. パスパラメーター
    名前 説明
    なし
    表 : 32. クエリパラメーター
    名前 説明
    mode サードパーティ統合のための非同期モードと同期モードのサポート。

    データタイプ:文字列

    有効な値:
    • async:非同期モード。
    • sync:同期モード。

    デフォルト:非同期

    表 : 33. 要求本文パラメーター (XML または JSON)
    名前 説明
    currency 必須です。小計、税金、および送料の通貨。小計、税金、および配送料は同じ通貨である必要があります。

    データタイプ:文字列

    最大長:40

    顧客_ID 顧客の識別子。

    データタイプ:文字列

    最大長:100

    割引 請求書に適用される割引。これは編集可能なフィールドです。

    データタイプ:文字列

    最大長:100

    invoice_date 必須です。顧客に請求された日付。

    データタイプ:文字列

    最大長:40

    形式:YYYY-MM-DD

    invoice_lines この注文内の購入に対して請求される明細を定義するオブジェクトのリスト。

    データタイプ:アレイ

    "invoice_lines": [
      {
        "invoiced_line_amount": "String",
        "invoiced_quantity": "String",
        "line_number": "String",
        "supplier_invoice_line_number": "String",
        "sales_order_line_number": "String"
      }
    ]
    invoice_lines.invoiced_line_amount 必須です。特定の発注書明細について顧客に請求される総コスト (税金と配送料を除く)。

    データタイプ:文字列

    最大長:40

    invoice_lines.invoiced_quantity 必須です。顧客に請求される商品またはサービスの数量。

    データタイプ:文字列

    最大長:40

    invoice_lines.line_number 必須です。特定の購入に対して顧客が生成した発注書明細番号。

    データタイプ:文字列

    最大長:40

    invoice_lines.sales_order_line_number 必須です。サプライヤーによって生成された受注明細行番号。

    データタイプ:文字列

    最大長:40

    invoice_lines.supplier_invoice_line_number 必須です。この請求書項目に対してサプライヤーによって生成された識別番号。

    データタイプ:文字列

    最大長:100

    other_charges 請求書に関連するその他の追加料金。これは編集可能なフィールドです。

    データタイプ:文字列

    最大長:100

    order_number 必須です。この注文に対して顧客から提供された発注書番号。

    データタイプ:文字列

    最大長:40

    remit_to_address 必須です。支払い先の場所。

    データタイプ:文字列

    最大長:1000

    sales_order_number 必須です。この注文に対してサプライヤーによって生成された番号または値。

    データタイプ:文字列

    最大長:40

    出荷 必須です。購入全体の合計送料。

    データタイプ:文字列

    最大長:40

    小計 必須です。税金および配送料を除き、仕入先に支払う合計金額。

    データタイプ:文字列

    最大長:40

    supplier_id 必須です。顧客が注文できるリセラーまたはサプライヤーの識別子。

    データタイプ:文字列

    最大長:100

    supplier_invoice_number 必須です。この請求書に対してサプライヤーによって生成された識別番号。

    データタイプ:文字列

    最大長:100

    supplier_tax_id サードパーティの再販業者に関連付けられている税識別子。これは編集可能なフィールドです。

    データタイプ:文字列

    最大長:100

    tax 必須です。購入に対して請求される税の合計額。

    データタイプ:文字列

    最大長:40

    tax_rate 注文に適用される税率。これは編集可能なフィールドです。

    データタイプ:文字列

    最大長:100

    third_party_import_id インポートされたデータのセットを一意に識別するために文字列値を渡すことをサードパーティに有効にする識別子。

    データタイプ:文字列

    最大長:100

    total_amount_invoiced 必須です。税金と配送料を含めて、サプライヤーに支払う合計金額。

    データタイプ:文字列

    最大長:40

    ヘッダー

    次の要求ヘッダーと応答ヘッダーは、この HTTP アクションにのみ適用されるか、別の方法でこのアクションに適用されます。

    表 : 34. 要求ヘッダー
    ヘッダー 説明
    承認 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml

    デフォルト: application/json

    注:
    調達統合フレームワークでは、 application/json データ形式のみがサポートされています。
    表 : 35. 応答ヘッダー
    ヘッダー 説明
    なし

    ステータスコード

    この HTTP アクションには、次のステータスコードが適用されます。

    表 : 36. ステータスコード
    ステータスコード 説明
    成功 成功。要求が正常に処理されました。
    失敗 不成功。要求はエラーで処理されました。

    応答本文のパラメーター (JSON)

    これらの応答本文パラメーターは、同期モードでクエリされたときに受信されます。
    名前 説明
    error_response_body 受注明細行番号、受注番号、仕入先請求書番号、仕入先請求書明細行番号、およびエラーメッセージで一覧表示されるエラーの説明。

    データタイプ:アレイ

    error_response_body.error_message 詳細なエラーメッセージ。

    データタイプ:文字列

    status_code 「成功」や「失敗」などの応答ステータス。

    データタイプ:文字列

    cURL 要求

    curl "https://instance.service-now.com/api/sn_spend_intg/spendint/invoice" \
    --request POST \
    --header "Accept:application/json" \
    --user 'username':'password'
    {"root":[{
      "customer_id": "Customer - A",
      "supplier_id": "SUP-123456",
      "third_party_import_id": "undefined",
      "supplier_invoice_number": "QAAP89873220071",
      "supplier_tax_id": "TIN000000",
      "order_number": "POL7987633",
      "sales_order_number": "SO0000000081",
      "invoice_date": "YYYY-MM-DD",
      "subtotal": "6000",
      "tax_rate": "10%",
      "tax": "600",
      "shipping": "120",
      "other_charges": "100",
      "discounts": "200",
      "total_amount_invoiced": "6620",
      "remit_to_address": "1640 Camino Del Rio North #202, San Diego,CA",
      "currency": "USD",
      "invoice_lines": [
        {
          "supplier_invoice_line_number": "QA789A867877ABN32251",
          "line_number": "POL587667",
          "sales_order_line_number": "SOL00000081",
          "invoiced_quantity": "45",
          "invoiced_line_amount": "4000"
        },
        {
          "line_number": "POL587668",
          "supplier_invoice_line_number": "78987323",
          "sales_order_line_number": "SOL98769",
          "invoiced_quantity": "12",
          "invoiced_line_amount": "2000"
        }
      ]
    }
    ]}

    考えられる回答:

    // Success response:
    {
        "result": {
            "response": "success"
        }
    }
    
    // Error response:
    {
        "result": {
            "response": [
                {
                    "customer_id": "Customer - A",
                    "supplier_id": "SUP-123456",
                    "third_party_import_id": "undefined",
                    "status_code": "failure",
                    "error_response_body": [
                        {
                            "sales_order_line_number": "SOL00000081",
                            "sales_order_number": "SO0000000081",
                            "supplier_invoice_number": "QAAP89873220071",
                            "supplier_invoice_line_number": "QA789A867877ABN32251",
                            "error_message": "The invoice do not have a corresponding purchase order which matches the purchase order number of the invoice provided\n"
                        }
                    ]
                }
            ]
        }
    }