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
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| mode | サードパーティ統合のための非同期モードと同期モードのサポート。 データタイプ:文字列 有効な値:
デフォルト:非同期 |
| 名前 | 説明 |
|---|---|
| currency | 必須。小計、税金、および送料の通貨。小計、税金、および配送料は同じ通貨である必要があります。 データタイプ:文字列 最大長:40 |
| 顧客_ID | 顧客の識別子。 データタイプ:文字列 最大長:100 |
| 割引 | 請求書に適用される割引。これは編集可能なフィールドです。 データタイプ:文字列 最大長:100 |
| invoice_date | 必須。顧客に請求された日付。 データタイプ:文字列 最大長:40 形式:YYYY-MM-DD |
| invoice_lines | この注文内の購入に対して請求される明細を定義するオブジェクトのリスト。 データタイプ:アレイ |
| 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 アクションにのみ適用されるか、別の方法でこのアクションに適用されます。
| ヘッダー | 説明 |
|---|---|
| 受容 | 応答本文のデータ形式。サポートされているタイプ: 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/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"
}
]
}
]
}
}