請求支払APIの呼び出し例
請求支払PUT
以下はCoupa APIを使って支払情報で請求を更新する方法の説明です
当社の請求支払APIでは、以下の2つの操作が可能です。
[支払済み]、[支払日]、[支払メモ]の3つの属性を持つ請求書を更新します。
Coupaでは、もともとこれらの請求書フィールドに情報を入力することができました。 複数の支払がある場合は、2つ目の支払情報を支払メモに追加する必要があります。
- これで、支払日、メモ(小切手番号)、支払額などの支払情報の配列を使用して請求書を更新できます。 これにより、1つの請求書に複数の支払日、小切手番号、支払額を割り当てることができます。
お客様からのフィードバックにより、単一の請求書に支払データのセットを追加することの必要性が確認されました。 一部のお客様はまだ請求書を更新する元の方法を使用されているため、支払情報で請求書を更新する両方の方法をサポートすることになりました。
この情報を入力できるURLは次のとおりです。
<your_instance_URL>/api/invoices/<invoiceid>- 通常、PUTで使用するために、請求番号とサプライヤーを使用して正しい請求書IDを検索します
PUTコールを使用して、Invoice Payments API (../invoices/<invoice_id> エンドポイント)を使用して、既存の請求書に支払いを投稿できます。 PUTのペイロードは、いくつかの受け入れ可能な形式のいずれかを使用して、XMLまたはJSONのいずれかの形式にすることができます。
Https ://<instance>.coupahost.com/api/invoices/を入力<invoice id>例: 既存の請求書に支払情報を追加する
この例では、[支払済み]、[フラグ]、[支払メモ]、[支払日]のフィールドを使用して、既存の請求書に支払情報を追加しています。
https ://<instance>.coupahost.com/api/invoices/<invoice id>ペイロードは、このインターフェースを使用して支払をプログラムで記録するために使用される、サポートされているいくつかの形式のいずれかにできます。 以下にいくつかの例を示します。
XMLペイロードの例
ここでは、引き続きサポートされるXMLペイロードスキーマの一例を示します。
<?xml version="1.0" encoding="UTF-8"?> <invoice-header> <paid type="boolean">TRUE</paid> <payment-date type="datetime">2009 -06 -23 T 00:00:00 - 08:00</payment-date> <payment-notes>CHECK | # 1003 | USD | 989.00 |全額支払済|</payment-notes> <payments type="array"> <payment> <amount-paid>989.00</amount-paid> <notes>1003</notes> <payment-date>2009 -06 -23</payment-date> </payment> </payments> </invoice-header>以下は、別のXMLペイロードの例です。
<?xml version="1.0" encoding="UTF-8"?> <invoice-header> <invoice-date type="datetime">"2019 -10 -22 00:00:00 -0900"</invoice-date> <invoice-number>Invoice_Number_1571292051.310760975</invoice-number> <payments type="array"> <payment> <amount-paid>5.00</amount-paid> <notes>1003</notes> <payment-date>2019 -10 -22</payment-date> </payment> </payments> </invoice-header>以下は、XMLを使用した複数支払の例です。
<?xml version="1.0" encoding="UTF-8"?> <invoice-header> <payments type="array"> <payment> <amount-paid>4.00</amount-paid> <notes>1003</notes> <payment-date>2009 -06 -23</payment-date> </payment> <payment> <amount-paid>5.00</amount-paid> <notes>1004</notes> <payment-date>2009 -06 -23</payment-date> </payment> </payments> </invoice-header>また、支払メモを使用して複数の小切手番号で既存の請求書を更新する、古いXMLペイロードの例(まだサポートされています)。 これは、[支払済み]、[小切手番号]、[支払日]のフィールドを使用しています。
<?xml version="1.0" encoding="UTF-8"?> <invoice-header> <paid type="boolean">true</paid> <payment-date type="datetime">2009 -06 -23 T 00:00:00 - 08:00</payment-date> <payment-notes>CHECK | # 1003 | USD | 989.00 |全額支払済|</payment-notes> <payments type="array"> <payment> <amount-paid type="decimal" nil="true">100.23</amount-paid> <notes nil="true">232</notes> <payment-date type="datetime" nil="true">2010 -09 -25 T 02:22:11 Z</payment-date> </payment> <payment> <amount-paid type="decimal" nil="true">9032.32</amount-paid> <notes nil="true">233</notes> <payment-date type="datetime" nil="true">2010 -09 -25 T 02:22:11 Z</payment-date> </payment> </payments> </invoice-header>JSONペイロードの例
JSONペイロードを使用するには、次のいずれかの例をフォーマットモデルとして使用できます。
データフォーマット1:
{" payments ": {" payment ": {" check_number ": "1234567 "," amount_paid ": "199.98 "," notes ": "String "," payment_date ": "9/12/2019 "}}," paid ": "false "," payment_date ": "9/11/2019 "," payment_notes ": "Partial payment with one payment check ." }データフォーマット2:
{" payments ": {" payment ": [{" check_number ": "test_check_number "," amount_paid ": "510 "," notes ": "A payment note "," payment_date ": "9/12/2019 "}, {" check_number ":" test_check_number ", "amount_paid ":" 53 ", "notes ":" A payment note ", "payment_date ":" 9/11/2019 "}]}, "paid ":" false ", "payment_date ":" 9/11/2019 ", "payment_notes ":" One partial payment with two checks ." }データフォーマット3:
{" payments ": [{" check_number ": "test_check_number "," amount_paid ": "510 "," notes ": "payment_note "," payment_date ": "9/12/2019 "}, {" check_number ":" test_check_number ", "amount_paid ":" 53 ", "notes ":" payment_note ", "payment_date ":" 9/11/2019 "}], "paid ":" false ", "payment_date ":" 9/11/2019 ", "payment_notes ":" Two payments with two checks ." }データフォーマット4:
{" paid ": "true "," payment - date ": "2019 -08 -13 T 00:00:00 Z "," payment - notes ": "eProc Voucher # TRM -19 -0009584 - PV/THB "," payments ": {" payment ": [{" payable - type ": "InvoiceHeader "," payable - id ": "4835 "," amount - paid ": "49.00 "," notes ": "TRM -19 -0009584 - PV "," payment - date ": "2019 -08 -13 T 00:00:00 Z "}, {" payable - type ":" InvoiceHeader ", "payable - id ":" 4835 ", "amount - paid ":" 51.00 ", "notes ":" TRM -19 -0009584 - PV ", "payment - date ":" 2019 -08 -13 T 00:00 Z "}}}Returns
成功した要求は、 HTTP 200 Createdを返します。 レスポンスの本文には、支払情報と更新された請求書が含まれます。
HTTP 400不正な要求. レスポンスの本文にはXML形式の検証エラーが含まれます。フィールド定義
| Name | 必須ですか? | Type | 許容値 | Description |
| paid | no | boolean | trueまたはfalse | これは請求ヘッダーの支払済みフィールドです。 trueまたはfalseの値に設定されています。 |
| payment-date | no | datetime | YYYY-MM-DDTHH:MM:SS+HH:MM | 支払が行われた日時 |
| payment-notes | no | テキスト | 説明またはメモ (存在する場合) | これらは、支払情報の一部として追加できるメモです。 |
| <payments> | payment array begins | |||
| <payment> | payment installment | |||
| amount-paid | no | 小数 | 小数点以下2桁 | 支払配列の一部として支払われた金額。 |
notesまたは check-number | no | String | トランザクションデータ | 支払のために取得された小切手、取引または支払情報。 このフィールドは <check-number>に置き換えられました。 廃止されたタグに送信されたデータは、メモフィールドに保存されます。 チェック#タグがCoupaインスタンスに入力されます。 (<check-number> も使用できます)。 |
| payment-date | no | テキスト | YYYY-MM-DDTHH:MM:SS+HH:MM | 支払が行われた日時 |
| </payment> | ||||
| </payments> | payment array ends |