---
title: "Update a Payable"
method: PATCH
path: "/v1/payables/{id}"
tags: ["Payables"]
---

# Update a Payable

`PATCH /v1/payables/{id}`

Update an existing Payable.

🏁 This endpoint's rate limit is 100 calls per minute.

## Path parameters

- `id` string, uuid, required

## Headers

- `Idempotency-Key` string

## Request body

- union
  - ItemsPayablesAchUpdatePayableACH — The payload for updating one or more properties of a Payable of `type: ach`.
    - `acting_team_member` string, uuid, required — The ID of the Team Member performing this action. This will be displayed in the Routable Dashboard and outbound email notifications.
    - `amount` string, decimal — The total amount for this Payable, in the currency defined in `currency_code`.
    - `attachments` ItemsPayablesCommonPayableAttachment[]
      - `object` 'Attachment', required
      - `id` string, uuid, required — The Attachment ID.
      - `name` string, required — The filename.
      - `mime_type` string, required — The file's MIME type.
      - `url` string, uri, required — A publicly accessibly URL that expires in 1 month.
      - `include_in_check_insert` boolean — If true, this Attachment will be printed and mailed along with the check sent to your vendor. Only one Attachment per Payable may be included.
    - `bill_number` string — The bill number for this item. If you have integrated your accounting software, this will match the bill number in that application.
    - `currency_code` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `due_on` string, date — The date by which the invoice must be paid.
    - `external_id` string, nullable — An external ID you have assigned to this Payable - for example, an invoice or payment ID from your application.
    - `issued_on` string, date — The date on which the invoice was issued.
    - `ledger` union — Fields specific to your accounting suite integration. Sage Intacct users should omit this field.
      - LedgersXeroXeroNewPayableMeta
        - `memo` string — A message (or notes) about the transaction. Included on the invoice in **Xero** as a Note.
        - `tax_style` 'exclusive' | 'inclusive' | 'none' — Specifies how **Xero** calculates and records the tax on this transaction. See the [Xero documentation](https://developer.xero.com/documentation/api-guides/tax-in-xero#TaxInclusiveVsExclusive) for more details.
      - LedgersNetsuiteNetSuiteNewPayableMeta
        - `account` LedgersNetsuiteNetSuiteAccount — An Account in your **NetSuite** chart of accounts (such as '1040 - Office Supplies') in which to track this Payable.[View the **NetSuite** documentation for Accounts for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/account.html).
          - `id` string, required — The ID of the Account associated with this Payable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounts](https://developers.routable.com/reference/list-accounting-software-objects).
        - `class` LedgersNetsuiteNetSuiteClass — The **NetSuite** Class (such as 'Furniture', 'Hardware', 'Accessories') to associate with this Payable, Receivable, or line item. [View the **NetSuite** documentation for Classes for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/classification.html).
          - `id` string, required — The ID of the Class associated with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/classes](https://developers.routable.com/reference/list-accounting-software-objects).
        - `location` LedgersNetsuiteNetSuiteLocation — The Location (such as 'San Francisco', 'Store #1234') to associate with this Payable, Receivable or line item. [View the **NetSuite** documentation for Locations for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/location.html).
          - `id` string, required — The location ID to associate with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/locations](https://developers.routable.com/reference/list-accounting-software-objects).
        - `memo` string — A message (or notes) about the transaction.
        - `posting_period` LedgersNetsuiteNetSuitePostingPeriod — The Posting Period (such as 'Fiscal Year 2002') to associate with this Payable or Receivable. [View the **NetSuite** documentation for Posting Periods for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/accountingperiod.html).
          - `id` string, required — The posting period ID to associate with this Payable or Receivable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounting_periods](https://developers.routable.com/reference/list-accounting-software-objects).
      - LedgersQboQBONewPayableMeta
        - `memo` string — A message (or notes) about the transaction. Included in **QuickBooks Online** as a Private Note.
    - `line_items` union[] — An array of line items on the Payable. If you don't wish to make any changes to the Payable's line items, omit this value from your payload entirely. If you send line_items on the payload: - **To keep a single line item unchanged:** Include a JSON object in the array containing just the line item's ID. - **To add a new line item:** Include a JSON object in the array, without an ID, containing all of the required properties for a line item. See the Create Payable documentation for more details. - **To edit a line item:** Include a JSON object in the array, with the line item's ID, and any line item properties you wish to change. See the Create Payable documentation for a list of available properties. - **To delete a line item:** Submit a payload which includes a line_items array, but omit the line item from the array submitted. You may not delete the last line item on a Payable.
      - union
        - ItemsPayablesCommonNewPayableLineItem
          - `account` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an account ID to track this line item against your chart of accounts. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `amount` string, decimal, required — The line item's total amount.
          - `description` string, required — The line item's description.
          - `is_taxable` boolean — When working with **QuickBooks Online**, specifies whether tax should be collected for this line item. To mark a line item as taxable, the `billable` field must be `billable`.
          - `item` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an item ID to track this line item against inventory items. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `quantity` string, decimal — The line item's quantity.
          - `style` 'item' — The line item's style. When working without an accounting software integration, or when integrated with Xero, you must use `item`. To attach the line item to an account in your accounting software's chart of accounts, use `account`. Or, omit this field and we'll populate it for you.
          - `tax` object — When working with **NetSuite** and **Xero**, you may supply a tax ID to specify the tax rate to apply to this line item.
            - `id` string, required
          - `unit_price` string, decimal, required — The line item's price per unit.
          - `ledger` union — Fields specific to your accounting software integration.
            - object
            - object
              - …
            - object
              - …
            - object — Configuration for a line item which may be optional or required depending on your Sage configuration.
              - …
          - `purchase_order_id` string — The ID of the purchase order in your linked accounting software.
          - `purchase_order_line_item_id` string — The ID of the line item in the purchase order referenced by `purchase_order_id`.
        - ItemsPayablesCommonUpdatePayableLineItem — Additional properties that are relevant depending on your accounting software and its configuration.
          - `account` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an account ID to track this line item against your chart of accounts. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `amount` string, decimal — The line item's total amount.
          - `description` string — The line item's description.
          - `is_taxable` boolean — When working with **QuickBooks Online**, specifies whether tax should be collected for this line item. To mark a line item as taxable, the `billable` field must be `billable`.
          - `item` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an item ID to track this line item against inventory items. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `quantity` string, decimal — The line item's quantity.
          - `style` 'item' — The line item's style. When working without an accounting software integration, or when integrated with Xero, you must use `item`. To attach the line item to an account in your accounting software's chart of accounts, use `account`.
          - `tax` object — When working with **NetSuite** and **Xero**, you may supply a tax ID to specify the tax rate to apply to this line item.
            - `id` string, required
          - `unit_price` string, decimal — The line item's price per unit.
          - `id` string, uuid, required — The ID of the line item to be updated.
          - `ledger` union — Fields specific to your accounting software integration.
            - LedgersXeroXeroNewPayableLineItemMeta
            - LedgersQboQBONewPayableLineItemMeta
              - …
            - LedgersNetsuiteNetSuiteNewPayableLineItemMeta
              - …
            - LedgersSageSageNewPayableLineItemMeta — Configuration for a line item which may be optional or required depending on your Sage configuration.
              - …
          - `purchase_order_id` string — The ID of the purchase order in your linked accounting software.
          - `purchase_order_line_item_id` string — The ID of the line item in the purchase order referenced by `purchase_order_id`.
    - `message` string — A custom message to include in the email to the vendor.
    - `pay_to_company` string, uuid — The Company ID to pay.
    - `reference` string — This field is used as an additional reference number for the item when Routable is **not** integrated with your accounting software. If you have integrated your accounting software with Routable, this field is not used.
    - `send_on` string, date, nullable — The date that the Payable should be sent **in Pacific Time**. - When set to today, the Payable will be sent immediately. - When set to `null`, the Payable will be put in a `ready_to_send` status. - When set to a date in the future, the Payable will be scheduled for a future date. No email communications will go out until that date.
    - `version` integer, required — The Payable's current version. The version is incremented each time the Payable is changed, starting at 1 when it is created. Submit the **current** version number in update payloads; the incrementation occurs server-side.
    - `withdraw_from_account` string, uuid — The Account ID to withdraw from.
    - `delivery_method` 'ach_expedited' | 'ach_next_day' | 'ach_same_day' | 'ach_standard' | 'real_time_payment' — The Payable delivery method option. Different selections here will incur [different fees](https://docs.routable.com/en/articles/4800434-understanding-routable-fees).' Note that for `ach_next_day` and `ach_same_day` Payables, [cut-off times](https://docs.routable.com/en/articles/5149655-bank-transfer-payment-delivery-options) apply. If a Payable is created after the cut-off time when `ach_same_day` or `ach_next_day` is selected as a `delivery_method`, the Payable will be scheduled as if it had been created on the following business day.
    - `pay_to_payment_method` string, uuid — The Payment Method ID to pay.
    - `type` 'ach', required
    - `type_details` ItemsPayablesAchNewPayableACHTypeDetails
      - `addenda_record` string — An ACH addenda record adds supplemental data to a transaction. This will cost an [additional fee](https://docs.routable.com/hc/en-us/articles/21511804223501-Addenda-Records). This is only valid for `Payables` to `Companies` of `type=business`.
  - ItemsPayablesCheckUpdatePayableCheck — Use type `check` whenever you want to update any field related to Payment Methods for a `check` type Payable.
    - `acting_team_member` string, uuid, required — The ID of the Team Member performing this action. This will be displayed in the Routable Dashboard and outbound email notifications.
    - `amount` string, decimal — The total amount for this Payable, in the currency defined in `currency_code`.
    - `attachments` ItemsPayablesCommonPayableAttachment[]
      - `object` 'Attachment', required
      - `id` string, uuid, required — The Attachment ID.
      - `name` string, required — The filename.
      - `mime_type` string, required — The file's MIME type.
      - `url` string, uri, required — A publicly accessibly URL that expires in 1 month.
      - `include_in_check_insert` boolean — If true, this Attachment will be printed and mailed along with the check sent to your vendor. Only one Attachment per Payable may be included.
    - `bill_number` string — The bill number for this item. If you have integrated your accounting software, this will match the bill number in that application.
    - `currency_code` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `due_on` string, date — The date by which the invoice must be paid.
    - `external_id` string, nullable — An external ID you have assigned to this Payable - for example, an invoice or payment ID from your application.
    - `issued_on` string, date — The date on which the invoice was issued.
    - `ledger` union — Fields specific to your accounting suite integration. Sage Intacct users should omit this field.
      - LedgersXeroXeroNewPayableMeta
        - `memo` string — A message (or notes) about the transaction. Included on the invoice in **Xero** as a Note.
        - `tax_style` 'exclusive' | 'inclusive' | 'none' — Specifies how **Xero** calculates and records the tax on this transaction. See the [Xero documentation](https://developer.xero.com/documentation/api-guides/tax-in-xero#TaxInclusiveVsExclusive) for more details.
      - LedgersNetsuiteNetSuiteNewPayableMeta
        - `account` LedgersNetsuiteNetSuiteAccount — An Account in your **NetSuite** chart of accounts (such as '1040 - Office Supplies') in which to track this Payable.[View the **NetSuite** documentation for Accounts for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/account.html).
          - `id` string, required — The ID of the Account associated with this Payable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounts](https://developers.routable.com/reference/list-accounting-software-objects).
        - `class` LedgersNetsuiteNetSuiteClass — The **NetSuite** Class (such as 'Furniture', 'Hardware', 'Accessories') to associate with this Payable, Receivable, or line item. [View the **NetSuite** documentation for Classes for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/classification.html).
          - `id` string, required — The ID of the Class associated with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/classes](https://developers.routable.com/reference/list-accounting-software-objects).
        - `location` LedgersNetsuiteNetSuiteLocation — The Location (such as 'San Francisco', 'Store #1234') to associate with this Payable, Receivable or line item. [View the **NetSuite** documentation for Locations for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/location.html).
          - `id` string, required — The location ID to associate with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/locations](https://developers.routable.com/reference/list-accounting-software-objects).
        - `memo` string — A message (or notes) about the transaction.
        - `posting_period` LedgersNetsuiteNetSuitePostingPeriod — The Posting Period (such as 'Fiscal Year 2002') to associate with this Payable or Receivable. [View the **NetSuite** documentation for Posting Periods for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/accountingperiod.html).
          - `id` string, required — The posting period ID to associate with this Payable or Receivable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounting_periods](https://developers.routable.com/reference/list-accounting-software-objects).
      - LedgersQboQBONewPayableMeta
        - `memo` string — A message (or notes) about the transaction. Included in **QuickBooks Online** as a Private Note.
    - `line_items` union[] — An array of line items on the Payable. If you don't wish to make any changes to the Payable's line items, omit this value from your payload entirely. If you send line_items on the payload: - **To keep a single line item unchanged:** Include a JSON object in the array containing just the line item's ID. - **To add a new line item:** Include a JSON object in the array, without an ID, containing all of the required properties for a line item. See the Create Payable documentation for more details. - **To edit a line item:** Include a JSON object in the array, with the line item's ID, and any line item properties you wish to change. See the Create Payable documentation for a list of available properties. - **To delete a line item:** Submit a payload which includes a line_items array, but omit the line item from the array submitted. You may not delete the last line item on a Payable.
      - union
        - ItemsPayablesCommonNewPayableLineItem
          - `account` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an account ID to track this line item against your chart of accounts. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `amount` string, decimal, required — The line item's total amount.
          - `description` string, required — The line item's description.
          - `is_taxable` boolean — When working with **QuickBooks Online**, specifies whether tax should be collected for this line item. To mark a line item as taxable, the `billable` field must be `billable`.
          - `item` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an item ID to track this line item against inventory items. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `quantity` string, decimal — The line item's quantity.
          - `style` 'item' — The line item's style. When working without an accounting software integration, or when integrated with Xero, you must use `item`. To attach the line item to an account in your accounting software's chart of accounts, use `account`. Or, omit this field and we'll populate it for you.
          - `tax` object — When working with **NetSuite** and **Xero**, you may supply a tax ID to specify the tax rate to apply to this line item.
            - `id` string, required
          - `unit_price` string, decimal, required — The line item's price per unit.
          - `ledger` union — Fields specific to your accounting software integration.
            - object
            - object
              - …
            - object
              - …
            - object — Configuration for a line item which may be optional or required depending on your Sage configuration.
              - …
          - `purchase_order_id` string — The ID of the purchase order in your linked accounting software.
          - `purchase_order_line_item_id` string — The ID of the line item in the purchase order referenced by `purchase_order_id`.
        - ItemsPayablesCommonUpdatePayableLineItem — Additional properties that are relevant depending on your accounting software and its configuration.
          - `account` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an account ID to track this line item against your chart of accounts. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `amount` string, decimal — The line item's total amount.
          - `description` string — The line item's description.
          - `is_taxable` boolean — When working with **QuickBooks Online**, specifies whether tax should be collected for this line item. To mark a line item as taxable, the `billable` field must be `billable`.
          - `item` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an item ID to track this line item against inventory items. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `quantity` string, decimal — The line item's quantity.
          - `style` 'item' — The line item's style. When working without an accounting software integration, or when integrated with Xero, you must use `item`. To attach the line item to an account in your accounting software's chart of accounts, use `account`.
          - `tax` object — When working with **NetSuite** and **Xero**, you may supply a tax ID to specify the tax rate to apply to this line item.
            - `id` string, required
          - `unit_price` string, decimal — The line item's price per unit.
          - `id` string, uuid, required — The ID of the line item to be updated.
          - `ledger` union — Fields specific to your accounting software integration.
            - LedgersXeroXeroNewPayableLineItemMeta
            - LedgersQboQBONewPayableLineItemMeta
              - …
            - LedgersNetsuiteNetSuiteNewPayableLineItemMeta
              - …
            - LedgersSageSageNewPayableLineItemMeta — Configuration for a line item which may be optional or required depending on your Sage configuration.
              - …
          - `purchase_order_id` string — The ID of the purchase order in your linked accounting software.
          - `purchase_order_line_item_id` string — The ID of the line item in the purchase order referenced by `purchase_order_id`.
    - `message` string — A custom message to include in the email to the vendor.
    - `pay_to_company` string, uuid — The Company ID to pay.
    - `reference` string — This field is used as an additional reference number for the item when Routable is **not** integrated with your accounting software. If you have integrated your accounting software with Routable, this field is not used.
    - `send_on` string, date, nullable — The date that the Payable should be sent **in Pacific Time**. - When set to today, the Payable will be sent immediately. - When set to `null`, the Payable will be put in a `ready_to_send` status. - When set to a date in the future, the Payable will be scheduled for a future date. No email communications will go out until that date.
    - `version` integer, required — The Payable's current version. The version is incremented each time the Payable is changed, starting at 1 when it is created. Submit the **current** version number in update payloads; the incrementation occurs server-side.
    - `withdraw_from_account` string, uuid — The Account ID to withdraw from.
    - `delivery_method` 'check_international' | 'check_next_day' | 'check_priority' | 'check_priority_express' | 'check_priority_signature' | 'check_standard' | 'check_standard_certified' | 'check_two_day' — The payable delivery method option. Different selections here will incur [different fees](https://docs.routable.com/en/articles/4800434-understanding-routable-fees).
    - `pay_to_payment_method` string, uuid — The Payment Method ID to pay.
    - `type` 'check', required
  - ItemsPayablesExternalUpdatePayableExternal — Use type `external` when you want to mark an existing `Payable` as paid off of Routable.
    - `acting_team_member` string, uuid, required — The ID of the Team Member performing this action. This will be displayed in the Routable Dashboard and outbound email notifications.
    - `amount` string, decimal — The total amount for this Payable, in the currency defined in `currency_code`.
    - `attachments` ItemsPayablesCommonPayableAttachment[]
      - `object` 'Attachment', required
      - `id` string, uuid, required — The Attachment ID.
      - `name` string, required — The filename.
      - `mime_type` string, required — The file's MIME type.
      - `url` string, uri, required — A publicly accessibly URL that expires in 1 month.
      - `include_in_check_insert` boolean — If true, this Attachment will be printed and mailed along with the check sent to your vendor. Only one Attachment per Payable may be included.
    - `bill_number` string — The bill number for this item. If you have integrated your accounting software, this will match the bill number in that application.
    - `currency_code` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `due_on` string, date — The date by which the invoice must be paid.
    - `external_id` string, nullable — An external ID you have assigned to this Payable - for example, an invoice or payment ID from your application.
    - `issued_on` string, date — The date on which the invoice was issued.
    - `ledger` union — Fields specific to your accounting suite integration. Sage Intacct users should omit this field.
      - LedgersXeroXeroNewPayableMeta
        - `memo` string — A message (or notes) about the transaction. Included on the invoice in **Xero** as a Note.
        - `tax_style` 'exclusive' | 'inclusive' | 'none' — Specifies how **Xero** calculates and records the tax on this transaction. See the [Xero documentation](https://developer.xero.com/documentation/api-guides/tax-in-xero#TaxInclusiveVsExclusive) for more details.
      - LedgersNetsuiteNetSuiteNewPayableMeta
        - `account` LedgersNetsuiteNetSuiteAccount — An Account in your **NetSuite** chart of accounts (such as '1040 - Office Supplies') in which to track this Payable.[View the **NetSuite** documentation for Accounts for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/account.html).
          - `id` string, required — The ID of the Account associated with this Payable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounts](https://developers.routable.com/reference/list-accounting-software-objects).
        - `class` LedgersNetsuiteNetSuiteClass — The **NetSuite** Class (such as 'Furniture', 'Hardware', 'Accessories') to associate with this Payable, Receivable, or line item. [View the **NetSuite** documentation for Classes for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/classification.html).
          - `id` string, required — The ID of the Class associated with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/classes](https://developers.routable.com/reference/list-accounting-software-objects).
        - `location` LedgersNetsuiteNetSuiteLocation — The Location (such as 'San Francisco', 'Store #1234') to associate with this Payable, Receivable or line item. [View the **NetSuite** documentation for Locations for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/location.html).
          - `id` string, required — The location ID to associate with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/locations](https://developers.routable.com/reference/list-accounting-software-objects).
        - `memo` string — A message (or notes) about the transaction.
        - `posting_period` LedgersNetsuiteNetSuitePostingPeriod — The Posting Period (such as 'Fiscal Year 2002') to associate with this Payable or Receivable. [View the **NetSuite** documentation for Posting Periods for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/accountingperiod.html).
          - `id` string, required — The posting period ID to associate with this Payable or Receivable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounting_periods](https://developers.routable.com/reference/list-accounting-software-objects).
      - LedgersQboQBONewPayableMeta
        - `memo` string — A message (or notes) about the transaction. Included in **QuickBooks Online** as a Private Note.
    - `line_items` union[] — An array of line items on the Payable. If you don't wish to make any changes to the Payable's line items, omit this value from your payload entirely. If you send line_items on the payload: - **To keep a single line item unchanged:** Include a JSON object in the array containing just the line item's ID. - **To add a new line item:** Include a JSON object in the array, without an ID, containing all of the required properties for a line item. See the Create Payable documentation for more details. - **To edit a line item:** Include a JSON object in the array, with the line item's ID, and any line item properties you wish to change. See the Create Payable documentation for a list of available properties. - **To delete a line item:** Submit a payload which includes a line_items array, but omit the line item from the array submitted. You may not delete the last line item on a Payable.
      - union
        - ItemsPayablesCommonNewPayableLineItem
          - `account` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an account ID to track this line item against your chart of accounts. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `amount` string, decimal, required — The line item's total amount.
          - `description` string, required — The line item's description.
          - `is_taxable` boolean — When working with **QuickBooks Online**, specifies whether tax should be collected for this line item. To mark a line item as taxable, the `billable` field must be `billable`.
          - `item` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an item ID to track this line item against inventory items. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `quantity` string, decimal — The line item's quantity.
          - `style` 'item' — The line item's style. When working without an accounting software integration, or when integrated with Xero, you must use `item`. To attach the line item to an account in your accounting software's chart of accounts, use `account`. Or, omit this field and we'll populate it for you.
          - `tax` object — When working with **NetSuite** and **Xero**, you may supply a tax ID to specify the tax rate to apply to this line item.
            - `id` string, required
          - `unit_price` string, decimal, required — The line item's price per unit.
          - `ledger` union — Fields specific to your accounting software integration.
            - object
            - object
              - …
            - object
              - …
            - object — Configuration for a line item which may be optional or required depending on your Sage configuration.
              - …
          - `purchase_order_id` string — The ID of the purchase order in your linked accounting software.
          - `purchase_order_line_item_id` string — The ID of the line item in the purchase order referenced by `purchase_order_id`.
        - ItemsPayablesCommonUpdatePayableLineItem — Additional properties that are relevant depending on your accounting software and its configuration.
          - `account` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an account ID to track this line item against your chart of accounts. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `amount` string, decimal — The line item's total amount.
          - `description` string — The line item's description.
          - `is_taxable` boolean — When working with **QuickBooks Online**, specifies whether tax should be collected for this line item. To mark a line item as taxable, the `billable` field must be `billable`.
          - `item` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an item ID to track this line item against inventory items. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `quantity` string, decimal — The line item's quantity.
          - `style` 'item' — The line item's style. When working without an accounting software integration, or when integrated with Xero, you must use `item`. To attach the line item to an account in your accounting software's chart of accounts, use `account`.
          - `tax` object — When working with **NetSuite** and **Xero**, you may supply a tax ID to specify the tax rate to apply to this line item.
            - `id` string, required
          - `unit_price` string, decimal — The line item's price per unit.
          - `id` string, uuid, required — The ID of the line item to be updated.
          - `ledger` union — Fields specific to your accounting software integration.
            - LedgersXeroXeroNewPayableLineItemMeta
            - LedgersQboQBONewPayableLineItemMeta
              - …
            - LedgersNetsuiteNetSuiteNewPayableLineItemMeta
              - …
            - LedgersSageSageNewPayableLineItemMeta — Configuration for a line item which may be optional or required depending on your Sage configuration.
              - …
          - `purchase_order_id` string — The ID of the purchase order in your linked accounting software.
          - `purchase_order_line_item_id` string — The ID of the line item in the purchase order referenced by `purchase_order_id`.
    - `message` string — A custom message to include in the email to the vendor.
    - `pay_to_company` string, uuid — The Company ID to pay.
    - `reference` string — This field is used as an additional reference number for the item when Routable is **not** integrated with your accounting software. If you have integrated your accounting software with Routable, this field is not used.
    - `send_on` string, date, nullable — The date that the Payable should be sent **in Pacific Time**. - When set to today, the Payable will be sent immediately. - When set to `null`, the Payable will be put in a `ready_to_send` status. - When set to a date in the future, the Payable will be scheduled for a future date. No email communications will go out until that date.
    - `version` integer, required — The Payable's current version. The version is incremented each time the Payable is changed, starting at 1 when it is created. Submit the **current** version number in update payloads; the incrementation occurs server-side.
    - `withdraw_from_account` string, uuid — The Account ID to withdraw from.
    - `type` 'external', required — The `type` of `Payable`.
    - `type_details` ItemsPayablesExternalUpdatePayableExternalTypeDetails, required
      - `paid_on` string, date, required — The date you paid the company outside of Routable.
      - `payment_method` 'ach' | 'check' | 'credit_card' | 'debit_card' | 'other' | 'payment_platform' | 'paypal' | 'wire_domestic' | 'wire_international', required — The method you used to pay the company outside of Routable.
      - `reference` string, required — The reference associated with this external payment.
      - `skip_accounting_software` boolean — If true, do not record this transaction to your integrated accounting software.
  - ItemsPayablesInternationalUpdatePayableInternational — The payload for updating one or more properties of a Payable of `type: international`.
    - `acting_team_member` string, uuid, required — The ID of the Team Member performing this action. This will be displayed in the Routable Dashboard and outbound email notifications.
    - `amount` string, decimal — The total amount for this Payable, in the currency defined in `currency_code`.
    - `attachments` ItemsPayablesCommonPayableAttachment[]
      - `object` 'Attachment', required
      - `id` string, uuid, required — The Attachment ID.
      - `name` string, required — The filename.
      - `mime_type` string, required — The file's MIME type.
      - `url` string, uri, required — A publicly accessibly URL that expires in 1 month.
      - `include_in_check_insert` boolean — If true, this Attachment will be printed and mailed along with the check sent to your vendor. Only one Attachment per Payable may be included.
    - `bill_number` string — The bill number for this item. If you have integrated your accounting software, this will match the bill number in that application.
    - `currency_code` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `due_on` string, date — The date by which the invoice must be paid.
    - `external_id` string, nullable — An external ID you have assigned to this Payable - for example, an invoice or payment ID from your application.
    - `issued_on` string, date — The date on which the invoice was issued.
    - `ledger` union — Fields specific to your accounting suite integration. Sage Intacct users should omit this field.
      - LedgersXeroXeroNewPayableMeta
        - `memo` string — A message (or notes) about the transaction. Included on the invoice in **Xero** as a Note.
        - `tax_style` 'exclusive' | 'inclusive' | 'none' — Specifies how **Xero** calculates and records the tax on this transaction. See the [Xero documentation](https://developer.xero.com/documentation/api-guides/tax-in-xero#TaxInclusiveVsExclusive) for more details.
      - LedgersNetsuiteNetSuiteNewPayableMeta
        - `account` LedgersNetsuiteNetSuiteAccount — An Account in your **NetSuite** chart of accounts (such as '1040 - Office Supplies') in which to track this Payable.[View the **NetSuite** documentation for Accounts for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/account.html).
          - `id` string, required — The ID of the Account associated with this Payable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounts](https://developers.routable.com/reference/list-accounting-software-objects).
        - `class` LedgersNetsuiteNetSuiteClass — The **NetSuite** Class (such as 'Furniture', 'Hardware', 'Accessories') to associate with this Payable, Receivable, or line item. [View the **NetSuite** documentation for Classes for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/classification.html).
          - `id` string, required — The ID of the Class associated with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/classes](https://developers.routable.com/reference/list-accounting-software-objects).
        - `location` LedgersNetsuiteNetSuiteLocation — The Location (such as 'San Francisco', 'Store #1234') to associate with this Payable, Receivable or line item. [View the **NetSuite** documentation for Locations for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/location.html).
          - `id` string, required — The location ID to associate with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/locations](https://developers.routable.com/reference/list-accounting-software-objects).
        - `memo` string — A message (or notes) about the transaction.
        - `posting_period` LedgersNetsuiteNetSuitePostingPeriod — The Posting Period (such as 'Fiscal Year 2002') to associate with this Payable or Receivable. [View the **NetSuite** documentation for Posting Periods for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/accountingperiod.html).
          - `id` string, required — The posting period ID to associate with this Payable or Receivable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounting_periods](https://developers.routable.com/reference/list-accounting-software-objects).
      - LedgersQboQBONewPayableMeta
        - `memo` string — A message (or notes) about the transaction. Included in **QuickBooks Online** as a Private Note.
    - `line_items` union[] — An array of line items on the Payable. If you don't wish to make any changes to the Payable's line items, omit this value from your payload entirely. If you send line_items on the payload: - **To keep a single line item unchanged:** Include a JSON object in the array containing just the line item's ID. - **To add a new line item:** Include a JSON object in the array, without an ID, containing all of the required properties for a line item. See the Create Payable documentation for more details. - **To edit a line item:** Include a JSON object in the array, with the line item's ID, and any line item properties you wish to change. See the Create Payable documentation for a list of available properties. - **To delete a line item:** Submit a payload which includes a line_items array, but omit the line item from the array submitted. You may not delete the last line item on a Payable.
      - union
        - ItemsPayablesCommonNewPayableLineItem
          - `account` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an account ID to track this line item against your chart of accounts. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `amount` string, decimal, required — The line item's total amount.
          - `description` string, required — The line item's description.
          - `is_taxable` boolean — When working with **QuickBooks Online**, specifies whether tax should be collected for this line item. To mark a line item as taxable, the `billable` field must be `billable`.
          - `item` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an item ID to track this line item against inventory items. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `quantity` string, decimal — The line item's quantity.
          - `style` 'item' — The line item's style. When working without an accounting software integration, or when integrated with Xero, you must use `item`. To attach the line item to an account in your accounting software's chart of accounts, use `account`. Or, omit this field and we'll populate it for you.
          - `tax` object — When working with **NetSuite** and **Xero**, you may supply a tax ID to specify the tax rate to apply to this line item.
            - `id` string, required
          - `unit_price` string, decimal, required — The line item's price per unit.
          - `ledger` union — Fields specific to your accounting software integration.
            - object
            - object
              - …
            - object
              - …
            - object — Configuration for a line item which may be optional or required depending on your Sage configuration.
              - …
          - `purchase_order_id` string — The ID of the purchase order in your linked accounting software.
          - `purchase_order_line_item_id` string — The ID of the line item in the purchase order referenced by `purchase_order_id`.
        - ItemsPayablesCommonUpdatePayableLineItem — Additional properties that are relevant depending on your accounting software and its configuration.
          - `account` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an account ID to track this line item against your chart of accounts. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `amount` string, decimal — The line item's total amount.
          - `description` string — The line item's description.
          - `is_taxable` boolean — When working with **QuickBooks Online**, specifies whether tax should be collected for this line item. To mark a line item as taxable, the `billable` field must be `billable`.
          - `item` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an item ID to track this line item against inventory items. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `quantity` string, decimal — The line item's quantity.
          - `style` 'item' — The line item's style. When working without an accounting software integration, or when integrated with Xero, you must use `item`. To attach the line item to an account in your accounting software's chart of accounts, use `account`.
          - `tax` object — When working with **NetSuite** and **Xero**, you may supply a tax ID to specify the tax rate to apply to this line item.
            - `id` string, required
          - `unit_price` string, decimal — The line item's price per unit.
          - `id` string, uuid, required — The ID of the line item to be updated.
          - `ledger` union — Fields specific to your accounting software integration.
            - LedgersXeroXeroNewPayableLineItemMeta
            - LedgersQboQBONewPayableLineItemMeta
              - …
            - LedgersNetsuiteNetSuiteNewPayableLineItemMeta
              - …
            - LedgersSageSageNewPayableLineItemMeta — Configuration for a line item which may be optional or required depending on your Sage configuration.
              - …
          - `purchase_order_id` string — The ID of the purchase order in your linked accounting software.
          - `purchase_order_line_item_id` string — The ID of the line item in the purchase order referenced by `purchase_order_id`.
    - `message` string — A custom message to include in the email to the vendor.
    - `pay_to_company` string, uuid — The Company ID to pay.
    - `reference` string — This field is used as an additional reference number for the item when Routable is **not** integrated with your accounting software. If you have integrated your accounting software with Routable, this field is not used.
    - `send_on` string, date, nullable — The date that the Payable should be sent **in Pacific Time**. - When set to today, the Payable will be sent immediately. - When set to `null`, the Payable will be put in a `ready_to_send` status. - When set to a date in the future, the Payable will be scheduled for a future date. No email communications will go out until that date.
    - `version` integer, required — The Payable's current version. The version is incremented each time the Payable is changed, starting at 1 when it is created. Submit the **current** version number in update payloads; the incrementation occurs server-side.
    - `withdraw_from_account` string, uuid — The Account ID to withdraw from.
    - `currency_code_recipient` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `delivery_method` 'international_ach' | 'international_swift' | 'international_vendor_choice' — The Payable delivery method option. Different selections here will incur [different fees](https://docs.routable.com/en/articles/4800434-understanding-routable-fees).
    - `pay_to_payment_method` string, uuid — The Payment Method ID to pay.
    - `type` 'international', required — The `type` of `Payable`.
    - `type_details` ItemsPayablesInternationalNewPayableInternationalTypeDetails
      - `addenda_record` string, nullable — An addenda record adds supplemental data to a transaction. This will cost an [additional fee](https://docs.routable.com/hc/en-us/articles/21511804223501-Addenda-Records). This is only valid for `Payables` to `Companies` of `type=business`.
      - `purpose_code` string, nullable — The purpose code for this Payable. Required for some countries. Please see our [Supported Countries and Territories Explorer](https://developers.routable.com/docs/supported-countries-and-territories) to confirm the requirements for your destination Country. Query the [List Purpose Codes](https://developers.routable.com/reference/list-country-purpose-codes) endpoint to list potential purpose codes for a given Country and currency combination.
      - `swift_charge_option` 'sha' | 'our', nullable — Specifies whether the SWIFT transfer fee is shared (`sha`) between the sender and the recipient, or paid in full by the sender (`our`). For `international_ach` payments the value should be `our` or left blank.
  - ItemsPayablesVendorChoiceUpdatePayableVendorChoice — Payload for updating a Payable that leaves the choice of payment method up to the vendor.
    - `acting_team_member` string, uuid, required — The ID of the Team Member performing this action. This will be displayed in the Routable Dashboard and outbound email notifications.
    - `amount` string, decimal — The total amount for this Payable, in the currency defined in `currency_code`.
    - `attachments` ItemsPayablesCommonPayableAttachment[]
      - `object` 'Attachment', required
      - `id` string, uuid, required — The Attachment ID.
      - `name` string, required — The filename.
      - `mime_type` string, required — The file's MIME type.
      - `url` string, uri, required — A publicly accessibly URL that expires in 1 month.
      - `include_in_check_insert` boolean — If true, this Attachment will be printed and mailed along with the check sent to your vendor. Only one Attachment per Payable may be included.
    - `bill_number` string — The bill number for this item. If you have integrated your accounting software, this will match the bill number in that application.
    - `currency_code` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `due_on` string, date — The date by which the invoice must be paid.
    - `external_id` string, nullable — An external ID you have assigned to this Payable - for example, an invoice or payment ID from your application.
    - `issued_on` string, date — The date on which the invoice was issued.
    - `ledger` union — Fields specific to your accounting suite integration. Sage Intacct users should omit this field.
      - LedgersXeroXeroNewPayableMeta
        - `memo` string — A message (or notes) about the transaction. Included on the invoice in **Xero** as a Note.
        - `tax_style` 'exclusive' | 'inclusive' | 'none' — Specifies how **Xero** calculates and records the tax on this transaction. See the [Xero documentation](https://developer.xero.com/documentation/api-guides/tax-in-xero#TaxInclusiveVsExclusive) for more details.
      - LedgersNetsuiteNetSuiteNewPayableMeta
        - `account` LedgersNetsuiteNetSuiteAccount — An Account in your **NetSuite** chart of accounts (such as '1040 - Office Supplies') in which to track this Payable.[View the **NetSuite** documentation for Accounts for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/account.html).
          - `id` string, required — The ID of the Account associated with this Payable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounts](https://developers.routable.com/reference/list-accounting-software-objects).
        - `class` LedgersNetsuiteNetSuiteClass — The **NetSuite** Class (such as 'Furniture', 'Hardware', 'Accessories') to associate with this Payable, Receivable, or line item. [View the **NetSuite** documentation for Classes for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/classification.html).
          - `id` string, required — The ID of the Class associated with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/classes](https://developers.routable.com/reference/list-accounting-software-objects).
        - `location` LedgersNetsuiteNetSuiteLocation — The Location (such as 'San Francisco', 'Store #1234') to associate with this Payable, Receivable or line item. [View the **NetSuite** documentation for Locations for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/location.html).
          - `id` string, required — The location ID to associate with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/locations](https://developers.routable.com/reference/list-accounting-software-objects).
        - `memo` string — A message (or notes) about the transaction.
        - `posting_period` LedgersNetsuiteNetSuitePostingPeriod — The Posting Period (such as 'Fiscal Year 2002') to associate with this Payable or Receivable. [View the **NetSuite** documentation for Posting Periods for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/accountingperiod.html).
          - `id` string, required — The posting period ID to associate with this Payable or Receivable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounting_periods](https://developers.routable.com/reference/list-accounting-software-objects).
      - LedgersQboQBONewPayableMeta
        - `memo` string — A message (or notes) about the transaction. Included in **QuickBooks Online** as a Private Note.
    - `line_items` union[] — An array of line items on the Payable. If you don't wish to make any changes to the Payable's line items, omit this value from your payload entirely. If you send line_items on the payload: - **To keep a single line item unchanged:** Include a JSON object in the array containing just the line item's ID. - **To add a new line item:** Include a JSON object in the array, without an ID, containing all of the required properties for a line item. See the Create Payable documentation for more details. - **To edit a line item:** Include a JSON object in the array, with the line item's ID, and any line item properties you wish to change. See the Create Payable documentation for a list of available properties. - **To delete a line item:** Submit a payload which includes a line_items array, but omit the line item from the array submitted. You may not delete the last line item on a Payable.
      - union
        - ItemsPayablesCommonNewPayableLineItem
          - `account` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an account ID to track this line item against your chart of accounts. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `amount` string, decimal, required — The line item's total amount.
          - `description` string, required — The line item's description.
          - `is_taxable` boolean — When working with **QuickBooks Online**, specifies whether tax should be collected for this line item. To mark a line item as taxable, the `billable` field must be `billable`.
          - `item` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an item ID to track this line item against inventory items. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `quantity` string, decimal — The line item's quantity.
          - `style` 'item' — The line item's style. When working without an accounting software integration, or when integrated with Xero, you must use `item`. To attach the line item to an account in your accounting software's chart of accounts, use `account`. Or, omit this field and we'll populate it for you.
          - `tax` object — When working with **NetSuite** and **Xero**, you may supply a tax ID to specify the tax rate to apply to this line item.
            - `id` string, required
          - `unit_price` string, decimal, required — The line item's price per unit.
          - `ledger` union — Fields specific to your accounting software integration.
            - object
            - object
              - …
            - object
              - …
            - object — Configuration for a line item which may be optional or required depending on your Sage configuration.
              - …
          - `purchase_order_id` string — The ID of the purchase order in your linked accounting software.
          - `purchase_order_line_item_id` string — The ID of the line item in the purchase order referenced by `purchase_order_id`.
        - ItemsPayablesCommonUpdatePayableLineItem — Additional properties that are relevant depending on your accounting software and its configuration.
          - `account` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an account ID to track this line item against your chart of accounts. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `amount` string, decimal — The line item's total amount.
          - `description` string — The line item's description.
          - `is_taxable` boolean — When working with **QuickBooks Online**, specifies whether tax should be collected for this line item. To mark a line item as taxable, the `billable` field must be `billable`.
          - `item` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an item ID to track this line item against inventory items. Either `item` or `account` is required depending on the style of line item you are creating.
            - `id` string, required
          - `quantity` string, decimal — The line item's quantity.
          - `style` 'item' — The line item's style. When working without an accounting software integration, or when integrated with Xero, you must use `item`. To attach the line item to an account in your accounting software's chart of accounts, use `account`.
          - `tax` object — When working with **NetSuite** and **Xero**, you may supply a tax ID to specify the tax rate to apply to this line item.
            - `id` string, required
          - `unit_price` string, decimal — The line item's price per unit.
          - `id` string, uuid, required — The ID of the line item to be updated.
          - `ledger` union — Fields specific to your accounting software integration.
            - LedgersXeroXeroNewPayableLineItemMeta
            - LedgersQboQBONewPayableLineItemMeta
              - …
            - LedgersNetsuiteNetSuiteNewPayableLineItemMeta
              - …
            - LedgersSageSageNewPayableLineItemMeta — Configuration for a line item which may be optional or required depending on your Sage configuration.
              - …
          - `purchase_order_id` string — The ID of the purchase order in your linked accounting software.
          - `purchase_order_line_item_id` string — The ID of the line item in the purchase order referenced by `purchase_order_id`.
    - `message` string — A custom message to include in the email to the vendor.
    - `pay_to_company` string, uuid — The Company ID to pay.
    - `reference` string — This field is used as an additional reference number for the item when Routable is **not** integrated with your accounting software. If you have integrated your accounting software with Routable, this field is not used.
    - `send_on` string, date, nullable — The date that the Payable should be sent **in Pacific Time**. - When set to today, the Payable will be sent immediately. - When set to `null`, the Payable will be put in a `ready_to_send` status. - When set to a date in the future, the Payable will be scheduled for a future date. No email communications will go out until that date.
    - `version` integer, required — The Payable's current version. The version is incremented each time the Payable is changed, starting at 1 when it is created. Submit the **current** version number in update payloads; the incrementation occurs server-side.
    - `withdraw_from_account` string, uuid — The Account ID to withdraw from.
    - `type` 'vendor_choice', required — The `type` of `Payable`.
    - `type_details` ItemsPayablesVendorChoiceNewPayableVendorChoiceTypeDetails
      - `delivery_method_choices` string[] — Allow your vendor to choose different payment methods and enter their payment information. Defaults to `["ach", "check"]`.

## Response `200`

OK

- union
  - ItemsPayablesAchPayableACH
    - `id` string, uuid, required — The resource ID.
    - `amount` string, decimal, required — The total amount for this payment.
    - `amount_due` string, decimal, required — The total amount remaining due for this payment.
    - `amount_recipient` number, double — The amount that will be sent to the vendor.
    - `amount_sender` number, double — The amount paid by the sender.
    - `amount_paid` string, decimal, required — The total amount paid for this payment.
    - `approved_at` string, date-time, nullable, required — The date the payment was approved.
    - `bill_number` string, nullable, required — The bill number for this item. If you have integrated your accounting software, this will match the bill number in that application.
    - `created_at` string, date-time — The creation date and time of the Item.
    - `currency_code` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `currency_code_recipient` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `currency_code_sender` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `due_on` string, date, required — The date the payment is due.
    - `exchange_rate` string — The exchange rate used to convert the amount_sender into the amount_recipient.
    - `expected_on` string, date, nullable, required — The date the payment is expected to hit the receiving account.
    - `external_id` string, nullable, required — An external ID that you have assigned to this transaction - for example, an invoice or payment number in your application.
    - `fixed_side` 'sender' | 'recipient' — Which amount associated with the payment is fixed and will be used to determine the other side's amount.
    - `issued_on` string, date, required — The date the invoice was issued.
    - `is_exchange_rate_locked` boolean — Designate whether or not the exchange_rate value is actually the one that will be used to perform the currency conversion (true) or if it is an estimate based on the current rate (false).
    - `reference` string, nullable — This field is used as an additional reference number for the item when Routable is **not** integrated with your accounting software. If you have integrated your accounting software with Routable, this field is not used.
    - `sent_on` string, date, nullable, required — The date the payment or invoice was sent to the receiving Company. If the Payable or Receivable is created after the [cut-off time](https://docs.routable.com/en/articles/5149655-bank-transfer-payment-delivery-options) for the chosen `delivery_method`, the `sent_on` date will reflect the date the transaction was actually sent, which may be the following business day after the requested `send_on` date.
    - `status` 'canceled' | 'completed' | 'compliance_hold' | 'created' | 'externally_paid' | 'failed' | 'initiated' | 'issue' | 'needs_approval' | 'new' | 'pending' | 'po_discrepancy_hold' | 'processing' | 'ready_to_send' | 'scheduled', required — The status of the payment: | Value | Description | | `canceled` | The payment was canceled. No funds were sent to the **receiver**. | | `completed` | The payment was completed. The **receiver** has received the funds at the specified `pay_to_payment_method`. | | `compliance_hold` | The payment has been held pending resolution of a **compliance hold.** See the `Company`'s `compliance_checks` for details. | | `created` | The payment is newly created. | | `externally_paid` | The payment is a record of a payment made outside of Routable. | `failed` | The payment failed at some point on its journey through the banking system. See `failure_detail` for details and resolutions. | | `initiated` | The transfer of funds has begun. This corresponds to the "In Transit" state in the Routable UI. | | `issue` | The payment failed at some point while Routable was creating it. See `failure_detail` for details and resolutions. | | `needs_approval` | The payment has been paused until it receives approval from all required approvers. | | `pending` | The payment is held pending the `pay_to_company`'s selection of a payment and/or `type` (`vendor_choice` `Payables`). | | `po_discrepancy_hold` | The payment has been held pending resolution of a purchase order discrepancy. | | `processing` | The payment is currently being processed in Routable. (**Note:** As payment are only in this status for a few seconds, `payable.status_changed` webhooks are **not fired** for it.) | | `ready_to_send` | The payment is waiting to be manually sent, either through the Routable Dashboard or an update to `send_on`. | | `scheduled` | The payment is scheduled to be sent on the future date referenced in `send_on`. |
    - `status_changed_at` string, date-time, required — The datetime of the last status change.
    - `status_changes` ItemsCommonStatusChangeItem[], required — The status timeline, sorted from oldest to newest.
      - `changed_at` string, date-time, required — The datetime associated with this status change.
      - `status` 'analyzing' | 'canceled' | 'completed' | 'compliance_hold' | 'created' | 'externally_paid' | 'failed' | 'import' | 'initiated' | 'issue' | 'needs_approval' | 'new' | 'ocr' | 'pending' | 'po_discrepancy_hold' | 'processing' | 'ready_to_send' | 'scheduled', required — The new status of the `Payable` as of the date/time indicated in `changed_at`. | Value | Description | | `analyzing` | Routable is processing payment data for a payment created via OCR in the Routable Dashboard. | | `canceled` | The payment was canceled. No funds were sent to the **receiver**. | | `completed` | The payment was completed. The **receiver** has received the funds at the specified `pay_to_payment_method`. | | `compliance_hold` | The payment has been held pending resolution of a **compliance hold.** See the `Company`'s `compliance_checks` for details. | | `created` | The payment is newly created. | | `externally_paid` | The payment is a record of a payment made outside of Routable. | `failed` | The payment failed at some point on its journey through the banking system. See `failure_detail` for details and resolutions. | | `initiated` | The transfer of funds has begun. This corresponds to the "In Transit" state in the Routable UI. | | `issue` | The payment failed at some point while Routable was creating it. See `failure_detail` for details and resolutions. | | `needs_approval` | The payment has been paused until it receives approval from all required approvers. | | `new` | The payment is newly created. | | `ocr` | Routable is processing payment data for a payment created via OCR in the Routable Dashboard. | | `pending` | The payment is held pending the `pay_to_company`'s selection of a payment and/or `type` (`vendor_choice` `Payables`). | | `po_discrepancy_hold` | The payment has been held pending resolution of a purchase order discrepancy. | | `processing` | The payment is currently being processed in Routable. (**Note:** As payment are only in this status for a few seconds, `payable.status_changed` webhooks are **not fired** for it.) | | `ready_to_send` | The payment is waiting to be manually sent, either through the Routable Dashboard or an update to `send_on`. | | `scheduled` | The payment is scheduled to be sent on the future date referenced in `send_on`. |
    - `links` ItemsCommonItemLinks, required — Related links.
      - `self` string, uri-reference, required — Link to this object.
      - `confirmation` string, nullable — Link to download payment confirmation document as a PDF.
    - `version` integer — The current version of the resource that is incremental per change, starting at 1 at the moment of creation.
    - `object` 'Payable', required — The object’s type (`Payable`).
    - `attachments` object, required — A list of file attachments to this resource.
      - `object` 'List', required — The object’s type (`List`).
      - `results` ItemsPayablesCommonPayableAttachment[], required
        - `object` 'Attachment', required
        - `id` string, uuid, required — The Attachment ID.
        - `name` string, required — The filename.
        - `mime_type` string, required — The file's MIME type.
        - `url` string, uri, required — A publicly accessibly URL that expires in 1 month.
        - `include_in_check_insert` boolean — If true, this Attachment will be printed and mailed along with the check sent to your vendor. Only one Attachment per Payable may be included.
    - `delivery_method` 'ach_expedited' | 'ach_next_day' | 'ach_same_day' | 'ach_standard' | 'check_standard' | 'check_international' | 'check_next_day' | 'check_priority' | 'check_priority_express' | 'check_priority_signature' | 'check_standard_certified' | 'check_two_day' | 'international_ach' | 'international_swift' | 'international_vendor_choice' | 'paypal_direct' | 'real_time_payment', nullable, required — The payment delivery method option. Different selections here will incur [different fees](https://docs.routable.com/en/articles/4800434-understanding-routable-fees).
    - `delivery_network` 'ach' | 'fedex' | 'fednow' | 'local_rails' | 'paypal' | 'rtp' | 'swift' | 'usps', nullable — The network that delivered the payment to the receiving `Company`. For `check` `Payables`, this will be the mail carrier that delivered the check to the receiver. `Payables` with types `external` and `vendor_choice` will always return `null` for this value. For all other `Payables`, this will be the banking network or platform used to complete the transaction. | Value | Payable `type` | Description | | --------------| ----------------| ------------------------------------| | `ach` | `ach` | [ACH Network](https://www.nacha.org/)] | | `fedex` | `check` | [FedEx](https://fedex.com)] | | `fednow` | `ach` | [FedNow](https://explore.fednow.org) | | `local_rails` | `international` | The local rails available in the recipient's country were used. | | `paypal` | `paypal` | [PayPal](https://paypal.com) | [PayPal](https://paypal.com) | | `rtp` | `ach` | [RTP Network](https://www.theclearinghouse.org/payment-systems/rtp) | | `swift` | `international` | [Swift](https://www.swift.com) | | `usps` | `check` | [United States Postal Service](https://usps.com) |
    - `failure_detail` ItemsPayablesCommonPayableFailureDetail, nullable — If the `Payable` is in the status `issue` or `failed`, this object will describe the error that occurred to trigger the failure. This object will be `null` if there is no failure. See [Handling Failed Payments](https://developers.routable.com/docs/handling-failed-payments) for guidance on how to programmatically respond to failures.
      - `description` string — A human-readable description of the error that occurred.
      - `occurred_at` string, date-time — The timestamp when the failure occurred.
      - `type` 'compliance_failure' | 'funding_failure' | 'invalid_bank_account_currency' | 'invalid_bank_account_inactive' | 'invalid_company_name' | 'other_unknown' | 'rejected_refused' | 'technical_error' — The type of error that occurred. | Value | Description | | ----------- | -----------------------------------| | `compliance_failure` | The `Payable` was blocked due to AML, sanctions, policy, currency, or regulatory restrictions. | | `funding_failure` | Insufficient funds were available to fund the `Payable`. | | `invalid_bank_account_currency` | The currency for the `Company`'s `PaymentMethod` is invalid. | | `invalid_bank_account_inactive` | The `Company`'s `PaymentMethod` is invalid or inactive. | | `invalid_company_name` | The `Company`'s name is invalid or does not match the expected value. | | `other_unknown` | An unknown error occurred. | | `rejected_refused` | The `Payable` was rejected or refused by the `Company` or the `Company`'s bank. | | `technical_error` | A system, formatting, or request error occurred that prevented the `Payable` from being processed. |
    - `ledger` union — Fields specific to your accounting suite integration.
      - object
        - `memo` string — A message (or notes) about the transaction. Included on the invoice in **Xero** as a Note.
        - `tax_style` 'exclusive' | 'inclusive' | 'none' — Specifies how **Xero** calculates and records the tax on this transaction. See the [Xero documentation](https://developer.xero.com/documentation/api-guides/tax-in-xero#TaxInclusiveVsExclusive) for more details.
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
      - object
        - `memo` string — A message (or notes) about the transaction. Included in **QuickBooks Online** as a Private Note.
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
      - object
        - `account` LedgersNetsuiteNetSuiteAccount — An Account in your **NetSuite** chart of accounts (such as '1040 - Office Supplies') in which to track this Payable.[View the **NetSuite** documentation for Accounts for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/account.html).
          - `id` string, required — The ID of the Account associated with this Payable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounts](https://developers.routable.com/reference/list-accounting-software-objects).
        - `class` LedgersNetsuiteNetSuiteClass — The **NetSuite** Class (such as 'Furniture', 'Hardware', 'Accessories') to associate with this Payable, Receivable, or line item. [View the **NetSuite** documentation for Classes for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/classification.html).
          - `id` string, required — The ID of the Class associated with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/classes](https://developers.routable.com/reference/list-accounting-software-objects).
        - `location` LedgersNetsuiteNetSuiteLocation — The Location (such as 'San Francisco', 'Store #1234') to associate with this Payable, Receivable or line item. [View the **NetSuite** documentation for Locations for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/location.html).
          - `id` string, required — The location ID to associate with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/locations](https://developers.routable.com/reference/list-accounting-software-objects).
        - `memo` string — A message (or notes) about the transaction.
        - `posting_period` LedgersNetsuiteNetSuitePostingPeriod — The Posting Period (such as 'Fiscal Year 2002') to associate with this Payable or Receivable. [View the **NetSuite** documentation for Posting Periods for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/accountingperiod.html).
          - `id` string, required — The posting period ID to associate with this Payable or Receivable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounting_periods](https://developers.routable.com/reference/list-accounting-software-objects).
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
      - LedgersCommonLedgerCommonPayableMeta
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
    - `line_items` object
      - `object` 'List', required — The object’s type (`List`).
      - `results` ItemsPayablesCommonPayableLineItem[], required
        - `account` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an account ID to track this line item against your chart of accounts. Either `item` or `account` is required depending on the style of line item you are creating.
          - `id` string, required
        - `amount` string, decimal — The line item's total amount.
        - `description` string — The line item's description.
        - `is_taxable` boolean — When working with **QuickBooks Online**, specifies whether tax should be collected for this line item. To mark a line item as taxable, the `billable` field must be `billable`.
        - `item` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an item ID to track this line item against inventory items. Either `item` or `account` is required depending on the style of line item you are creating.
          - `id` string, required
        - `quantity` string, decimal — The line item's quantity.
        - `style` 'item' — The line item's style. When working without an accounting software integration, or when integrated with Xero, you must use `item`. To attach the line item to an account in your accounting software's chart of accounts, use `account`.
        - `tax` object — When working with **NetSuite** and **Xero**, you may supply a tax ID to specify the tax rate to apply to this line item.
          - `id` string, required
        - `unit_price` string, decimal — The line item's price per unit.
        - `object` 'LineItem', required — The object’s type (`LineItem`).
        - `id` string, uuid, nullable — The ID of the line item.
        - `ledger` union — Fields specific to your accounting software integration.
          - LedgersXeroXeroNewPayableLineItemMeta
          - LedgersQboQBONewPayableLineItemMeta
            - `billable` 'billable' | 'not-billable' — A billable expense is an expense you incur on your customer's behalf when you perform work for them.
            - `class` LedgersQboQBOClass — The class ID to associate this Payable, Receivable or line item with in **QuickBooks Online**. You must enable classes in **QuickBooks Online** to use this attribute.
              - …
            - `customer_ref` string — The reference number for the customer that you would like to track this line item against.
            - `department` LedgersQboQBODepartment — The department or location ID to associate this Payable, Receivable or line item with in **QuickBooks Online**.
              - …
            - `markup` string, decimal — Markup amount expressed as a percent of charges already entered in the current transaction. To enter a rate of 10% use "10.0", not "0.01".
          - LedgersNetsuiteNetSuiteNewPayableLineItemMeta
            - `amortiz_start_date` string, date — The amortization start date.
            - `amortization_end_date` string, date — The amortization end date.
            - `amortization_residual` string — The residual value (the estimated value at the end of its lease term or useful life).
            - `amortization_sched` LedgersNetsuiteNetSuiteAmortizationSchedule — The **NetSuite** Amortization Template to associate with this line item. [View the **NetSuite** documentation for Amortization Template for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/amortizationtemplate.html).
              - …
            - `class` LedgersNetsuiteNetSuiteClass — The **NetSuite** Class (such as 'Furniture', 'Hardware', 'Accessories') to associate with this Payable, Receivable, or line item. [View the **NetSuite** documentation for Classes for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/classification.html).
              - …
            - `customer_ref` string — The reference number for the customer that you would like to track this line item against.
            - `department` LedgersNetsuiteNetSuiteDepartment — The **NetSuite** department (such as 'Engineering', 'Sales') to associate with this line item. [View the **NetSuite** documentation for Departments for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/department.html).
              - …
            - `location` LedgersNetsuiteNetSuiteLocation — The Location (such as 'San Francisco', 'Store #1234') to associate with this Payable, Receivable or line item. [View the **NetSuite** documentation for Locations for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/location.html).
              - …
          - LedgersSageSageNewPayableLineItemMeta — Configuration for a line item which may be optional or required depending on your Sage configuration.
            - `account` LedgersSageSageAccount — An Account in your **Sage Intacct** chart of accounts (such as '1040 - Office Supplies') in which to track this line item.
              - …
            - `class` LedgersSageSageClass — A Class (also called a *Channel*) in your **Sage Intacct** chart of accounts (such as 'Furniture') in which to track this line item.
              - …
            - `contract` LedgersSageSageContract — A Contract in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `customer_ref` string — The reference number for the customer that you would like to track this line item against.
            - `department` LedgersSageSageDepartment — A Department in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `employee` LedgersSageSageEmployee — An Employee in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `item` LedgersSageSageItem — An Item in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `location` LedgersSageSageLocation — A Location in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `project` LedgersSageSageProject — A Project in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `task` LedgersSageSageTask — A Task in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `vendor_ref` string — The reference number for the vendor that you would like to track this line item against.
            - `warehouse` LedgersSageSageWarehouse — A Warehouse in your **Sage Intacct** implementation against which to track this line item.
              - …
        - `purchase_order_id` string — The ID of the purchase order in your linked accounting software.
        - `purchase_order_line_item_id` string — The ID of the line item in the purchase order referenced by `purchase_order_id`.
    - `pay_to_company` CompaniesCompactCompany, required
      - `object` 'Company', required — The object’s type (`Company`).
      - `id` string, uuid, required — The Company ID.
      - `display_name` string, required — The Company's name for display in the Routable Dashboard.
      - `links` CompaniesCompanyLinks, required — Related links.
        - `self` string, uri-reference, required — Link to this object.
        - `compliance_checks` string, uri-reference, required — Link to this Company's Compliance Reports.
        - `contacts` string, uri-reference, required — Link to this Company's Contacts.
        - `payables` string, uri-reference, required — Link to this Company's Payables.
        - `payment_methods` string, uri-reference, required — Link to this Company's Payment Methods.
        - `receivables` string, uri-reference, required — Link to this Company's Receivables.
        - `tax_forms` string, uri-reference, required — Link to this Company's most recent TaxForm.
    - `pay_to_payment_method` object, nullable, required — The `PaymentMethod` that will receive the funds.
      - `object` 'PaymentMethod', required — The object’s type (`PaymentMethod`).
      - `id` string, uuid, required — The `PaymentMethod` ID.
      - `links` PaymentMethodsCommonPaymentMethodLinks, required — Related links.
        - `self` string, uri-reference, required — Link to this object.
        - `company` string, uri-reference, required — Link to this `PaymentMethod`'s `Company`.
      - `type` 'bank', required — The type of Payment Method
      - `type_details` PaymentMethodsBankPaymentMethodBankTypeDetails, required
        - `account_number` string, required — The bank account number. In responses, all but the last four digits will be masked for security.
        - `account_type` 'checking' | 'savings', required — The type of bank account.
        - `currency_code` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
        - `institution_name` string, required — The bank's name.
        - `logo` string, uri — The URL of the bank's logo in PNG format.
        - `primary_color` string — The bank's primary color hex code.
        - `routing_number` string — The bank's routing number.
    - `send_on` string, date, nullable, required — The date that the Payable should be sent **in Pacific Time**. - When set to today, the Payable will be sent immediately. - When set to `null`, the Payable will be put in a `ready_to_send` status. - When set to a date in the future, the Payable will be scheduled for a future date. No email communications will go out until that date. Note that if a Create Payable call occurs after the [cut-off time](https://docs.routable.com/en/articles/5149655-bank-transfer-payment-delivery-options) when `ach_same_day` or `ach_next_day` is selected as a `delivery_method`, the Payable will be scheduled as if it had been created on the following business day.
    - `withdraw_from_account` union
      - object
        - `object` 'Account', required — The object’s type (`Account`).
        - `id` string, uuid, required — The Account ID.
        - `links` AccountsAccountLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
        - `type` 'bank', required — The type of Account
        - `type_details` AccountsAccountBankTypeDetails, required
          - `account_number` string, required — The bank account number. In responses, all but the last four digits will be masked for security.
          - `account_type` 'checking' | 'savings', required — The type of bank account.
          - `institution_name` string, required — The bank's name.
          - `logo` string, uri — The URL of the bank's logo in PNG format.
          - `primary_color` string — The bank's primary color hex code.
          - `routing_number` string, required — The bank's nine-digit routing number.
      - object
        - `object` 'Account', required — The object’s type (`Account`).
        - `id` string, uuid, required — The Account ID.
        - `links` AccountsAccountLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
        - `type` 'balance', required — The type of Account
        - `type_details` object, required
      - object
        - `object` 'Account', required — The object’s type (`Account`).
        - `id` string, uuid, required — The Account ID.
        - `links` AccountsAccountLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
        - `type` 'paypal', required — The type of Account
        - `type_details` AccountsAccountPayPalTypeDetails, required
    - `type` 'ach', required
    - `type_details` ItemsPayablesAchPayableACHTypeDetails, required
      - `addenda_record` string, nullable — An ACH addenda record adds supplemental data to a transaction. This will cost an [additional fee](https://docs.routable.com/hc/en-us/articles/21511804223501-Addenda-Records). This is only valid for `Payables` to `Companies` of `type=business`.
      - `receiver` ItemsPayablesAchPayableACHTypeDetailsParty, required
        - `transaction_id` string, nullable, required — The ACH ID on the bank statement.
        - `trace_id` string, nullable, required — The ACH trace ID on the bank statement.
      - `sender` ItemsPayablesAchPayableACHTypeDetailsParty, required
        - `transaction_id` string, nullable, required — The ACH ID on the bank statement.
        - `trace_id` string, nullable, required — The ACH trace ID on the bank statement.
      - `transaction_id` string, nullable — The ACH ID on your bank statement. Will match the value in `sender.transaction_id`.
  - ItemsPayablesCheckPayableCheck
    - `object` 'Payable', required — The object’s type (`Payable`).
    - `pay_to_payment_method` object, nullable, required — The `PaymentMethod` that will receive the funds.
      - `object` 'PaymentMethod', required — The object’s type (`PaymentMethod`).
      - `id` string, uuid, required — The `PaymentMethod` ID.
      - `links` PaymentMethodsCommonPaymentMethodLinks, required — Related links.
        - `self` string, uri-reference, required — Link to this object.
        - `company` string, uri-reference, required — Link to this `PaymentMethod`'s `Company`.
      - `type` 'address', required — The type of payment method
      - `type_details` PaymentMethodsAddressPaymentMethodAddressTypeDetails, required
        - `address_line_1` string, required — The address' first line.
        - `address_line_2` string, nullable — The address' second line.
        - `city` string, required — The address' city.
        - `country` 'AD' | 'AE' | 'AF' | 'AG' | 'AI' | 'AL' | 'AM' | 'AO' | 'AR' | 'AS' | 'AT' | 'AU' | 'AW' | 'AX' | 'AZ' | 'BA' | 'BB' | 'BD' | 'BE' | 'BF' | 'BG' | 'BH' | 'BI' | 'BJ' | 'BL' | 'BM' | 'BN' | 'BO' | 'BQ' | 'BR' | 'BS' | 'BT' | 'BW' | 'BZ' | 'CA' | 'CC' | 'CD' | 'CF' | 'CG' | 'CH' | 'CI' | 'CL' | 'CM' | 'CN' | 'CO' | 'CR' | 'CV' | 'CX' | 'CY' | 'CZ' | 'DE' | 'DJ' | 'DK' | 'DM' | 'DO' | 'DZ' | 'EC' | 'EE' | 'EG' | 'EH' | 'ER' | 'ES' | 'ET' | 'FI' | 'FJ' | 'FK' | 'FM' | 'FO' | 'FR' | 'GA' | 'GB' | 'GD' | 'GE' | 'GF' | 'GG' | 'GH' | 'GI' | 'GL' | 'GM' | 'GN' | 'GP' | 'GQ' | 'GR' | 'GT' | 'GU' | 'GW' | 'GY' | 'HK' | 'HM' | 'HN' | 'HR' | 'HT' | 'HU' | 'ID' | 'IE' | 'IL' | 'IM' | 'IN' | 'IQ' | 'IS' | 'IT' | 'JE' | 'JM' | 'JO' | 'JP' | 'KE' | 'KG' | 'KH' | 'KI' | 'KM' | 'KN' | 'KR' | 'KW' | 'KY' | 'KZ' | 'LA' | 'LB' | 'LC' | 'LI' | 'LK' | 'LR' | 'LS' | 'LT' | 'LU' | 'LV' | 'MA' | 'MC' | 'MD' | 'ME' | 'MF' | 'MG' | 'MH' | 'MK' | 'ML' | 'MN' | 'MO' | 'MP' | 'MQ' | 'MR' | 'MS' | 'MT' | 'MU' | 'MV' | 'MX' | 'MW' | 'MY' | 'MZ' | 'NA' | 'NC' | 'NE' | 'NF' | 'NG' | 'NI' | 'NL' | 'NO' | 'NP' | 'NR' | 'NU' | 'NZ' | 'OM' | 'PA' | 'PE' | 'PF' | 'PG' | 'PH' | 'PK' | 'PL' | 'PM' | 'PN' | 'PR' | 'PT' | 'PW' | 'PY' | 'QA' | 'RE' | 'RO' | 'RS' | 'RW' | 'SA' | 'SB' | 'SC' | 'SE' | 'SG' | 'SH' | 'SI' | 'SJ' | 'SK' | 'SL' | 'SM' | 'SN' | 'SO' | 'SR' | 'ST' | 'SV' | 'SX' | 'SZ' | 'TC' | 'TD' | 'TF' | 'TG' | 'TH' | 'TJ' | 'TK' | 'TL' | 'TM' | 'TN' | 'TO' | 'TR' | 'TT' | 'TV' | 'TW' | 'TZ' | 'UA' | 'UG' | 'UM' | 'US' | 'UY' | 'UZ' | 'VA' | 'VC' | 'VI' | 'VN' | 'VU' | 'XK' | 'WF' | 'WS' | 'XX' | 'YE' | 'YT' | 'ZA' | 'ZM' | 'ZW', required — Country code in ISO 3166-1 Alpha-2 format.
        - `postal_code` string, required — The address' postal code.
        - `state` string, required — The address' state, province or territory.
        - `attention_line` string — If provided, this will be added as a 'to the attention line of' line printed on the envelope the check is mailed in.
        - `print_business_name` string, nullable — The business name to print on the check as the payee. If `recipient` is omitted, this will also be printed as the recipient on the envelope when the check is mailed.
        - `print_name` string, nullable — The payee name to print on the check. If `print_business_name` is omitted, this will also be printed as the recipient on the envelope when the check is mailed.
        - `recipient` string, nullable — The recipient that will be printed on the envelope when the check is mailed. If omitted, `print_business_name` will be used.
    - `send_on` string, date, nullable, required — The date the payment is scheduled to be sent.
    - `type` 'check', required
    - `type_details` ItemsPayablesCheckPayableCheckTypeDetails, required
      - `check_dated_on` string, date, nullable — The date printed on the check.
      - `check_number` string, nullable, required — The check number.
      - `expires_on` string, date, nullable — The expiration date printed on the check.
      - `tracking_number` string, nullable — The tracking number for the mailed check.
      - `tracking_url` string, uri, nullable — A browser-accessible URL for the tracking page for the mailed check.
    - `id` string, uuid, required — The resource ID.
    - `amount` string, decimal, required — The total amount for this payment.
    - `amount_due` string, decimal, required — The total amount remaining due for this payment.
    - `amount_recipient` number, double — The amount that will be sent to the vendor.
    - `amount_sender` number, double — The amount paid by the sender.
    - `amount_paid` string, decimal, required — The total amount paid for this payment.
    - `approved_at` string, date-time, nullable, required — The date the payment was approved.
    - `bill_number` string, nullable, required — The bill number for this item. If you have integrated your accounting software, this will match the bill number in that application.
    - `created_at` string, date-time — The creation date and time of the Item.
    - `currency_code` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `currency_code_recipient` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `currency_code_sender` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `due_on` string, date, required — The date the payment is due.
    - `exchange_rate` string — The exchange rate used to convert the amount_sender into the amount_recipient.
    - `expected_on` string, date, nullable, required — The date the payment is expected to hit the receiving account.
    - `external_id` string, nullable, required — An external ID that you have assigned to this transaction - for example, an invoice or payment number in your application.
    - `fixed_side` 'sender' | 'recipient' — Which amount associated with the payment is fixed and will be used to determine the other side's amount.
    - `issued_on` string, date, required — The date the invoice was issued.
    - `is_exchange_rate_locked` boolean — Designate whether or not the exchange_rate value is actually the one that will be used to perform the currency conversion (true) or if it is an estimate based on the current rate (false).
    - `reference` string, nullable — This field is used as an additional reference number for the item when Routable is **not** integrated with your accounting software. If you have integrated your accounting software with Routable, this field is not used.
    - `sent_on` string, date, nullable, required — The date the payment or invoice was sent to the receiving Company. If the Payable or Receivable is created after the [cut-off time](https://docs.routable.com/en/articles/5149655-bank-transfer-payment-delivery-options) for the chosen `delivery_method`, the `sent_on` date will reflect the date the transaction was actually sent, which may be the following business day after the requested `send_on` date.
    - `status` 'canceled' | 'completed' | 'compliance_hold' | 'created' | 'externally_paid' | 'failed' | 'initiated' | 'issue' | 'needs_approval' | 'new' | 'pending' | 'po_discrepancy_hold' | 'processing' | 'ready_to_send' | 'scheduled', required — The status of the payment: | Value | Description | | `canceled` | The payment was canceled. No funds were sent to the **receiver**. | | `completed` | The payment was completed. The **receiver** has received the funds at the specified `pay_to_payment_method`. | | `compliance_hold` | The payment has been held pending resolution of a **compliance hold.** See the `Company`'s `compliance_checks` for details. | | `created` | The payment is newly created. | | `externally_paid` | The payment is a record of a payment made outside of Routable. | `failed` | The payment failed at some point on its journey through the banking system. See `failure_detail` for details and resolutions. | | `initiated` | The transfer of funds has begun. This corresponds to the "In Transit" state in the Routable UI. | | `issue` | The payment failed at some point while Routable was creating it. See `failure_detail` for details and resolutions. | | `needs_approval` | The payment has been paused until it receives approval from all required approvers. | | `pending` | The payment is held pending the `pay_to_company`'s selection of a payment and/or `type` (`vendor_choice` `Payables`). | | `po_discrepancy_hold` | The payment has been held pending resolution of a purchase order discrepancy. | | `processing` | The payment is currently being processed in Routable. (**Note:** As payment are only in this status for a few seconds, `payable.status_changed` webhooks are **not fired** for it.) | | `ready_to_send` | The payment is waiting to be manually sent, either through the Routable Dashboard or an update to `send_on`. | | `scheduled` | The payment is scheduled to be sent on the future date referenced in `send_on`. |
    - `status_changed_at` string, date-time, required — The datetime of the last status change.
    - `status_changes` ItemsCommonStatusChangeItem[], required — The status timeline, sorted from oldest to newest.
      - `changed_at` string, date-time, required — The datetime associated with this status change.
      - `status` 'analyzing' | 'canceled' | 'completed' | 'compliance_hold' | 'created' | 'externally_paid' | 'failed' | 'import' | 'initiated' | 'issue' | 'needs_approval' | 'new' | 'ocr' | 'pending' | 'po_discrepancy_hold' | 'processing' | 'ready_to_send' | 'scheduled', required — The new status of the `Payable` as of the date/time indicated in `changed_at`. | Value | Description | | `analyzing` | Routable is processing payment data for a payment created via OCR in the Routable Dashboard. | | `canceled` | The payment was canceled. No funds were sent to the **receiver**. | | `completed` | The payment was completed. The **receiver** has received the funds at the specified `pay_to_payment_method`. | | `compliance_hold` | The payment has been held pending resolution of a **compliance hold.** See the `Company`'s `compliance_checks` for details. | | `created` | The payment is newly created. | | `externally_paid` | The payment is a record of a payment made outside of Routable. | `failed` | The payment failed at some point on its journey through the banking system. See `failure_detail` for details and resolutions. | | `initiated` | The transfer of funds has begun. This corresponds to the "In Transit" state in the Routable UI. | | `issue` | The payment failed at some point while Routable was creating it. See `failure_detail` for details and resolutions. | | `needs_approval` | The payment has been paused until it receives approval from all required approvers. | | `new` | The payment is newly created. | | `ocr` | Routable is processing payment data for a payment created via OCR in the Routable Dashboard. | | `pending` | The payment is held pending the `pay_to_company`'s selection of a payment and/or `type` (`vendor_choice` `Payables`). | | `po_discrepancy_hold` | The payment has been held pending resolution of a purchase order discrepancy. | | `processing` | The payment is currently being processed in Routable. (**Note:** As payment are only in this status for a few seconds, `payable.status_changed` webhooks are **not fired** for it.) | | `ready_to_send` | The payment is waiting to be manually sent, either through the Routable Dashboard or an update to `send_on`. | | `scheduled` | The payment is scheduled to be sent on the future date referenced in `send_on`. |
    - `links` ItemsCommonItemLinks, required — Related links.
      - `self` string, uri-reference, required — Link to this object.
      - `confirmation` string, nullable — Link to download payment confirmation document as a PDF.
    - `version` integer — The current version of the resource that is incremental per change, starting at 1 at the moment of creation.
    - `attachments` object, required — A list of file attachments to this resource.
      - `object` 'List', required — The object’s type (`List`).
      - `results` ItemsPayablesCommonPayableAttachment[], required
        - `object` 'Attachment', required
        - `id` string, uuid, required — The Attachment ID.
        - `name` string, required — The filename.
        - `mime_type` string, required — The file's MIME type.
        - `url` string, uri, required — A publicly accessibly URL that expires in 1 month.
        - `include_in_check_insert` boolean — If true, this Attachment will be printed and mailed along with the check sent to your vendor. Only one Attachment per Payable may be included.
    - `delivery_method` 'ach_expedited' | 'ach_next_day' | 'ach_same_day' | 'ach_standard' | 'check_standard' | 'check_international' | 'check_next_day' | 'check_priority' | 'check_priority_express' | 'check_priority_signature' | 'check_standard_certified' | 'check_two_day' | 'international_ach' | 'international_swift' | 'international_vendor_choice' | 'paypal_direct' | 'real_time_payment', nullable, required — The payment delivery method option. Different selections here will incur [different fees](https://docs.routable.com/en/articles/4800434-understanding-routable-fees).
    - `delivery_network` 'ach' | 'fedex' | 'fednow' | 'local_rails' | 'paypal' | 'rtp' | 'swift' | 'usps', nullable — The network that delivered the payment to the receiving `Company`. For `check` `Payables`, this will be the mail carrier that delivered the check to the receiver. `Payables` with types `external` and `vendor_choice` will always return `null` for this value. For all other `Payables`, this will be the banking network or platform used to complete the transaction. | Value | Payable `type` | Description | | --------------| ----------------| ------------------------------------| | `ach` | `ach` | [ACH Network](https://www.nacha.org/)] | | `fedex` | `check` | [FedEx](https://fedex.com)] | | `fednow` | `ach` | [FedNow](https://explore.fednow.org) | | `local_rails` | `international` | The local rails available in the recipient's country were used. | | `paypal` | `paypal` | [PayPal](https://paypal.com) | [PayPal](https://paypal.com) | | `rtp` | `ach` | [RTP Network](https://www.theclearinghouse.org/payment-systems/rtp) | | `swift` | `international` | [Swift](https://www.swift.com) | | `usps` | `check` | [United States Postal Service](https://usps.com) |
    - `failure_detail` ItemsPayablesCommonPayableFailureDetail, nullable — If the `Payable` is in the status `issue` or `failed`, this object will describe the error that occurred to trigger the failure. This object will be `null` if there is no failure. See [Handling Failed Payments](https://developers.routable.com/docs/handling-failed-payments) for guidance on how to programmatically respond to failures.
      - `description` string — A human-readable description of the error that occurred.
      - `occurred_at` string, date-time — The timestamp when the failure occurred.
      - `type` 'compliance_failure' | 'funding_failure' | 'invalid_bank_account_currency' | 'invalid_bank_account_inactive' | 'invalid_company_name' | 'other_unknown' | 'rejected_refused' | 'technical_error' — The type of error that occurred. | Value | Description | | ----------- | -----------------------------------| | `compliance_failure` | The `Payable` was blocked due to AML, sanctions, policy, currency, or regulatory restrictions. | | `funding_failure` | Insufficient funds were available to fund the `Payable`. | | `invalid_bank_account_currency` | The currency for the `Company`'s `PaymentMethod` is invalid. | | `invalid_bank_account_inactive` | The `Company`'s `PaymentMethod` is invalid or inactive. | | `invalid_company_name` | The `Company`'s name is invalid or does not match the expected value. | | `other_unknown` | An unknown error occurred. | | `rejected_refused` | The `Payable` was rejected or refused by the `Company` or the `Company`'s bank. | | `technical_error` | A system, formatting, or request error occurred that prevented the `Payable` from being processed. |
    - `ledger` union — Fields specific to your accounting suite integration.
      - object
        - `memo` string — A message (or notes) about the transaction. Included on the invoice in **Xero** as a Note.
        - `tax_style` 'exclusive' | 'inclusive' | 'none' — Specifies how **Xero** calculates and records the tax on this transaction. See the [Xero documentation](https://developer.xero.com/documentation/api-guides/tax-in-xero#TaxInclusiveVsExclusive) for more details.
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
      - object
        - `memo` string — A message (or notes) about the transaction. Included in **QuickBooks Online** as a Private Note.
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
      - object
        - `account` LedgersNetsuiteNetSuiteAccount — An Account in your **NetSuite** chart of accounts (such as '1040 - Office Supplies') in which to track this Payable.[View the **NetSuite** documentation for Accounts for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/account.html).
          - `id` string, required — The ID of the Account associated with this Payable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounts](https://developers.routable.com/reference/list-accounting-software-objects).
        - `class` LedgersNetsuiteNetSuiteClass — The **NetSuite** Class (such as 'Furniture', 'Hardware', 'Accessories') to associate with this Payable, Receivable, or line item. [View the **NetSuite** documentation for Classes for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/classification.html).
          - `id` string, required — The ID of the Class associated with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/classes](https://developers.routable.com/reference/list-accounting-software-objects).
        - `location` LedgersNetsuiteNetSuiteLocation — The Location (such as 'San Francisco', 'Store #1234') to associate with this Payable, Receivable or line item. [View the **NetSuite** documentation for Locations for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/location.html).
          - `id` string, required — The location ID to associate with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/locations](https://developers.routable.com/reference/list-accounting-software-objects).
        - `memo` string — A message (or notes) about the transaction.
        - `posting_period` LedgersNetsuiteNetSuitePostingPeriod — The Posting Period (such as 'Fiscal Year 2002') to associate with this Payable or Receivable. [View the **NetSuite** documentation for Posting Periods for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/accountingperiod.html).
          - `id` string, required — The posting period ID to associate with this Payable or Receivable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounting_periods](https://developers.routable.com/reference/list-accounting-software-objects).
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
      - LedgersCommonLedgerCommonPayableMeta
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
    - `line_items` object
      - `object` 'List', required — The object’s type (`List`).
      - `results` ItemsPayablesCommonPayableLineItem[], required
        - `account` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an account ID to track this line item against your chart of accounts. Either `item` or `account` is required depending on the style of line item you are creating.
          - `id` string, required
        - `amount` string, decimal — The line item's total amount.
        - `description` string — The line item's description.
        - `is_taxable` boolean — When working with **QuickBooks Online**, specifies whether tax should be collected for this line item. To mark a line item as taxable, the `billable` field must be `billable`.
        - `item` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an item ID to track this line item against inventory items. Either `item` or `account` is required depending on the style of line item you are creating.
          - `id` string, required
        - `quantity` string, decimal — The line item's quantity.
        - `style` 'item' — The line item's style. When working without an accounting software integration, or when integrated with Xero, you must use `item`. To attach the line item to an account in your accounting software's chart of accounts, use `account`.
        - `tax` object — When working with **NetSuite** and **Xero**, you may supply a tax ID to specify the tax rate to apply to this line item.
          - `id` string, required
        - `unit_price` string, decimal — The line item's price per unit.
        - `object` 'LineItem', required — The object’s type (`LineItem`).
        - `id` string, uuid, nullable — The ID of the line item.
        - `ledger` union — Fields specific to your accounting software integration.
          - LedgersXeroXeroNewPayableLineItemMeta
          - LedgersQboQBONewPayableLineItemMeta
            - `billable` 'billable' | 'not-billable' — A billable expense is an expense you incur on your customer's behalf when you perform work for them.
            - `class` LedgersQboQBOClass — The class ID to associate this Payable, Receivable or line item with in **QuickBooks Online**. You must enable classes in **QuickBooks Online** to use this attribute.
              - …
            - `customer_ref` string — The reference number for the customer that you would like to track this line item against.
            - `department` LedgersQboQBODepartment — The department or location ID to associate this Payable, Receivable or line item with in **QuickBooks Online**.
              - …
            - `markup` string, decimal — Markup amount expressed as a percent of charges already entered in the current transaction. To enter a rate of 10% use "10.0", not "0.01".
          - LedgersNetsuiteNetSuiteNewPayableLineItemMeta
            - `amortiz_start_date` string, date — The amortization start date.
            - `amortization_end_date` string, date — The amortization end date.
            - `amortization_residual` string — The residual value (the estimated value at the end of its lease term or useful life).
            - `amortization_sched` LedgersNetsuiteNetSuiteAmortizationSchedule — The **NetSuite** Amortization Template to associate with this line item. [View the **NetSuite** documentation for Amortization Template for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/amortizationtemplate.html).
              - …
            - `class` LedgersNetsuiteNetSuiteClass — The **NetSuite** Class (such as 'Furniture', 'Hardware', 'Accessories') to associate with this Payable, Receivable, or line item. [View the **NetSuite** documentation for Classes for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/classification.html).
              - …
            - `customer_ref` string — The reference number for the customer that you would like to track this line item against.
            - `department` LedgersNetsuiteNetSuiteDepartment — The **NetSuite** department (such as 'Engineering', 'Sales') to associate with this line item. [View the **NetSuite** documentation for Departments for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/department.html).
              - …
            - `location` LedgersNetsuiteNetSuiteLocation — The Location (such as 'San Francisco', 'Store #1234') to associate with this Payable, Receivable or line item. [View the **NetSuite** documentation for Locations for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/location.html).
              - …
          - LedgersSageSageNewPayableLineItemMeta — Configuration for a line item which may be optional or required depending on your Sage configuration.
            - `account` LedgersSageSageAccount — An Account in your **Sage Intacct** chart of accounts (such as '1040 - Office Supplies') in which to track this line item.
              - …
            - `class` LedgersSageSageClass — A Class (also called a *Channel*) in your **Sage Intacct** chart of accounts (such as 'Furniture') in which to track this line item.
              - …
            - `contract` LedgersSageSageContract — A Contract in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `customer_ref` string — The reference number for the customer that you would like to track this line item against.
            - `department` LedgersSageSageDepartment — A Department in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `employee` LedgersSageSageEmployee — An Employee in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `item` LedgersSageSageItem — An Item in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `location` LedgersSageSageLocation — A Location in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `project` LedgersSageSageProject — A Project in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `task` LedgersSageSageTask — A Task in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `vendor_ref` string — The reference number for the vendor that you would like to track this line item against.
            - `warehouse` LedgersSageSageWarehouse — A Warehouse in your **Sage Intacct** implementation against which to track this line item.
              - …
        - `purchase_order_id` string — The ID of the purchase order in your linked accounting software.
        - `purchase_order_line_item_id` string — The ID of the line item in the purchase order referenced by `purchase_order_id`.
    - `pay_to_company` CompaniesCompactCompany, required
      - `object` 'Company', required — The object’s type (`Company`).
      - `id` string, uuid, required — The Company ID.
      - `display_name` string, required — The Company's name for display in the Routable Dashboard.
      - `links` CompaniesCompanyLinks, required — Related links.
        - `self` string, uri-reference, required — Link to this object.
        - `compliance_checks` string, uri-reference, required — Link to this Company's Compliance Reports.
        - `contacts` string, uri-reference, required — Link to this Company's Contacts.
        - `payables` string, uri-reference, required — Link to this Company's Payables.
        - `payment_methods` string, uri-reference, required — Link to this Company's Payment Methods.
        - `receivables` string, uri-reference, required — Link to this Company's Receivables.
        - `tax_forms` string, uri-reference, required — Link to this Company's most recent TaxForm.
    - `withdraw_from_account` union
      - object
        - `object` 'Account', required — The object’s type (`Account`).
        - `id` string, uuid, required — The Account ID.
        - `links` AccountsAccountLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
        - `type` 'bank', required — The type of Account
        - `type_details` AccountsAccountBankTypeDetails, required
          - `account_number` string, required — The bank account number. In responses, all but the last four digits will be masked for security.
          - `account_type` 'checking' | 'savings', required — The type of bank account.
          - `institution_name` string, required — The bank's name.
          - `logo` string, uri — The URL of the bank's logo in PNG format.
          - `primary_color` string — The bank's primary color hex code.
          - `routing_number` string, required — The bank's nine-digit routing number.
      - object
        - `object` 'Account', required — The object’s type (`Account`).
        - `id` string, uuid, required — The Account ID.
        - `links` AccountsAccountLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
        - `type` 'balance', required — The type of Account
        - `type_details` object, required
      - object
        - `object` 'Account', required — The object’s type (`Account`).
        - `id` string, uuid, required — The Account ID.
        - `links` AccountsAccountLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
        - `type` 'paypal', required — The type of Account
        - `type_details` AccountsAccountPayPalTypeDetails, required
  - ItemsPayablesExternalPayableExternal
    - `object` 'Payable', required — The object’s type (`Payable`).
    - `type` 'external', required — The `type` of `Payable`.
    - `type_details` ItemsPayablesExternalPayableExternalTypeDetails, required
      - `paid_on` string, date, required — The date you paid the company outside of Routable.
      - `payment_method` 'ach' | 'check' | 'credit_card' | 'debit_card' | 'other' | 'payment_platform' | 'paypal' | 'wire_domestic' | 'wire_international', required — The method you used to pay the company outside of Routable.
      - `reference` string, required — The reference associated with this external payment.
    - `id` string, uuid, required — The resource ID.
    - `amount` string, decimal, required — The total amount for this payment.
    - `amount_due` string, decimal, required — The total amount remaining due for this payment.
    - `amount_recipient` number, double — The amount that will be sent to the vendor.
    - `amount_sender` number, double — The amount paid by the sender.
    - `amount_paid` string, decimal, required — The total amount paid for this payment.
    - `approved_at` string, date-time, nullable, required — The date the payment was approved.
    - `bill_number` string, nullable, required — The bill number for this item. If you have integrated your accounting software, this will match the bill number in that application.
    - `created_at` string, date-time — The creation date and time of the Item.
    - `currency_code` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `currency_code_recipient` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `currency_code_sender` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `due_on` string, date, required — The date the payment is due.
    - `exchange_rate` string — The exchange rate used to convert the amount_sender into the amount_recipient.
    - `expected_on` string, date, nullable, required — The date the payment is expected to hit the receiving account.
    - `external_id` string, nullable, required — An external ID that you have assigned to this transaction - for example, an invoice or payment number in your application.
    - `fixed_side` 'sender' | 'recipient' — Which amount associated with the payment is fixed and will be used to determine the other side's amount.
    - `issued_on` string, date, required — The date the invoice was issued.
    - `is_exchange_rate_locked` boolean — Designate whether or not the exchange_rate value is actually the one that will be used to perform the currency conversion (true) or if it is an estimate based on the current rate (false).
    - `reference` string, nullable — This field is used as an additional reference number for the item when Routable is **not** integrated with your accounting software. If you have integrated your accounting software with Routable, this field is not used.
    - `sent_on` string, date, nullable, required — The date the payment or invoice was sent to the receiving Company. If the Payable or Receivable is created after the [cut-off time](https://docs.routable.com/en/articles/5149655-bank-transfer-payment-delivery-options) for the chosen `delivery_method`, the `sent_on` date will reflect the date the transaction was actually sent, which may be the following business day after the requested `send_on` date.
    - `status` 'canceled' | 'completed' | 'compliance_hold' | 'created' | 'externally_paid' | 'failed' | 'initiated' | 'issue' | 'needs_approval' | 'new' | 'pending' | 'po_discrepancy_hold' | 'processing' | 'ready_to_send' | 'scheduled', required — The status of the payment: | Value | Description | | `canceled` | The payment was canceled. No funds were sent to the **receiver**. | | `completed` | The payment was completed. The **receiver** has received the funds at the specified `pay_to_payment_method`. | | `compliance_hold` | The payment has been held pending resolution of a **compliance hold.** See the `Company`'s `compliance_checks` for details. | | `created` | The payment is newly created. | | `externally_paid` | The payment is a record of a payment made outside of Routable. | `failed` | The payment failed at some point on its journey through the banking system. See `failure_detail` for details and resolutions. | | `initiated` | The transfer of funds has begun. This corresponds to the "In Transit" state in the Routable UI. | | `issue` | The payment failed at some point while Routable was creating it. See `failure_detail` for details and resolutions. | | `needs_approval` | The payment has been paused until it receives approval from all required approvers. | | `pending` | The payment is held pending the `pay_to_company`'s selection of a payment and/or `type` (`vendor_choice` `Payables`). | | `po_discrepancy_hold` | The payment has been held pending resolution of a purchase order discrepancy. | | `processing` | The payment is currently being processed in Routable. (**Note:** As payment are only in this status for a few seconds, `payable.status_changed` webhooks are **not fired** for it.) | | `ready_to_send` | The payment is waiting to be manually sent, either through the Routable Dashboard or an update to `send_on`. | | `scheduled` | The payment is scheduled to be sent on the future date referenced in `send_on`. |
    - `status_changed_at` string, date-time, required — The datetime of the last status change.
    - `status_changes` ItemsCommonStatusChangeItem[], required — The status timeline, sorted from oldest to newest.
      - `changed_at` string, date-time, required — The datetime associated with this status change.
      - `status` 'analyzing' | 'canceled' | 'completed' | 'compliance_hold' | 'created' | 'externally_paid' | 'failed' | 'import' | 'initiated' | 'issue' | 'needs_approval' | 'new' | 'ocr' | 'pending' | 'po_discrepancy_hold' | 'processing' | 'ready_to_send' | 'scheduled', required — The new status of the `Payable` as of the date/time indicated in `changed_at`. | Value | Description | | `analyzing` | Routable is processing payment data for a payment created via OCR in the Routable Dashboard. | | `canceled` | The payment was canceled. No funds were sent to the **receiver**. | | `completed` | The payment was completed. The **receiver** has received the funds at the specified `pay_to_payment_method`. | | `compliance_hold` | The payment has been held pending resolution of a **compliance hold.** See the `Company`'s `compliance_checks` for details. | | `created` | The payment is newly created. | | `externally_paid` | The payment is a record of a payment made outside of Routable. | `failed` | The payment failed at some point on its journey through the banking system. See `failure_detail` for details and resolutions. | | `initiated` | The transfer of funds has begun. This corresponds to the "In Transit" state in the Routable UI. | | `issue` | The payment failed at some point while Routable was creating it. See `failure_detail` for details and resolutions. | | `needs_approval` | The payment has been paused until it receives approval from all required approvers. | | `new` | The payment is newly created. | | `ocr` | Routable is processing payment data for a payment created via OCR in the Routable Dashboard. | | `pending` | The payment is held pending the `pay_to_company`'s selection of a payment and/or `type` (`vendor_choice` `Payables`). | | `po_discrepancy_hold` | The payment has been held pending resolution of a purchase order discrepancy. | | `processing` | The payment is currently being processed in Routable. (**Note:** As payment are only in this status for a few seconds, `payable.status_changed` webhooks are **not fired** for it.) | | `ready_to_send` | The payment is waiting to be manually sent, either through the Routable Dashboard or an update to `send_on`. | | `scheduled` | The payment is scheduled to be sent on the future date referenced in `send_on`. |
    - `links` ItemsCommonItemLinks, required — Related links.
      - `self` string, uri-reference, required — Link to this object.
      - `confirmation` string, nullable — Link to download payment confirmation document as a PDF.
    - `version` integer — The current version of the resource that is incremental per change, starting at 1 at the moment of creation.
    - `attachments` object, required — A list of file attachments to this resource.
      - `object` 'List', required — The object’s type (`List`).
      - `results` ItemsPayablesCommonPayableAttachment[], required
        - `object` 'Attachment', required
        - `id` string, uuid, required — The Attachment ID.
        - `name` string, required — The filename.
        - `mime_type` string, required — The file's MIME type.
        - `url` string, uri, required — A publicly accessibly URL that expires in 1 month.
        - `include_in_check_insert` boolean — If true, this Attachment will be printed and mailed along with the check sent to your vendor. Only one Attachment per Payable may be included.
    - `delivery_method` 'ach_expedited' | 'ach_next_day' | 'ach_same_day' | 'ach_standard' | 'check_standard' | 'check_international' | 'check_next_day' | 'check_priority' | 'check_priority_express' | 'check_priority_signature' | 'check_standard_certified' | 'check_two_day' | 'international_ach' | 'international_swift' | 'international_vendor_choice' | 'paypal_direct' | 'real_time_payment', nullable, required — The payment delivery method option. Different selections here will incur [different fees](https://docs.routable.com/en/articles/4800434-understanding-routable-fees).
    - `delivery_network` 'ach' | 'fedex' | 'fednow' | 'local_rails' | 'paypal' | 'rtp' | 'swift' | 'usps', nullable — The network that delivered the payment to the receiving `Company`. For `check` `Payables`, this will be the mail carrier that delivered the check to the receiver. `Payables` with types `external` and `vendor_choice` will always return `null` for this value. For all other `Payables`, this will be the banking network or platform used to complete the transaction. | Value | Payable `type` | Description | | --------------| ----------------| ------------------------------------| | `ach` | `ach` | [ACH Network](https://www.nacha.org/)] | | `fedex` | `check` | [FedEx](https://fedex.com)] | | `fednow` | `ach` | [FedNow](https://explore.fednow.org) | | `local_rails` | `international` | The local rails available in the recipient's country were used. | | `paypal` | `paypal` | [PayPal](https://paypal.com) | [PayPal](https://paypal.com) | | `rtp` | `ach` | [RTP Network](https://www.theclearinghouse.org/payment-systems/rtp) | | `swift` | `international` | [Swift](https://www.swift.com) | | `usps` | `check` | [United States Postal Service](https://usps.com) |
    - `failure_detail` ItemsPayablesCommonPayableFailureDetail, nullable — If the `Payable` is in the status `issue` or `failed`, this object will describe the error that occurred to trigger the failure. This object will be `null` if there is no failure. See [Handling Failed Payments](https://developers.routable.com/docs/handling-failed-payments) for guidance on how to programmatically respond to failures.
      - `description` string — A human-readable description of the error that occurred.
      - `occurred_at` string, date-time — The timestamp when the failure occurred.
      - `type` 'compliance_failure' | 'funding_failure' | 'invalid_bank_account_currency' | 'invalid_bank_account_inactive' | 'invalid_company_name' | 'other_unknown' | 'rejected_refused' | 'technical_error' — The type of error that occurred. | Value | Description | | ----------- | -----------------------------------| | `compliance_failure` | The `Payable` was blocked due to AML, sanctions, policy, currency, or regulatory restrictions. | | `funding_failure` | Insufficient funds were available to fund the `Payable`. | | `invalid_bank_account_currency` | The currency for the `Company`'s `PaymentMethod` is invalid. | | `invalid_bank_account_inactive` | The `Company`'s `PaymentMethod` is invalid or inactive. | | `invalid_company_name` | The `Company`'s name is invalid or does not match the expected value. | | `other_unknown` | An unknown error occurred. | | `rejected_refused` | The `Payable` was rejected or refused by the `Company` or the `Company`'s bank. | | `technical_error` | A system, formatting, or request error occurred that prevented the `Payable` from being processed. |
    - `ledger` union — Fields specific to your accounting suite integration.
      - object
        - `memo` string — A message (or notes) about the transaction. Included on the invoice in **Xero** as a Note.
        - `tax_style` 'exclusive' | 'inclusive' | 'none' — Specifies how **Xero** calculates and records the tax on this transaction. See the [Xero documentation](https://developer.xero.com/documentation/api-guides/tax-in-xero#TaxInclusiveVsExclusive) for more details.
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
      - object
        - `memo` string — A message (or notes) about the transaction. Included in **QuickBooks Online** as a Private Note.
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
      - object
        - `account` LedgersNetsuiteNetSuiteAccount — An Account in your **NetSuite** chart of accounts (such as '1040 - Office Supplies') in which to track this Payable.[View the **NetSuite** documentation for Accounts for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/account.html).
          - `id` string, required — The ID of the Account associated with this Payable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounts](https://developers.routable.com/reference/list-accounting-software-objects).
        - `class` LedgersNetsuiteNetSuiteClass — The **NetSuite** Class (such as 'Furniture', 'Hardware', 'Accessories') to associate with this Payable, Receivable, or line item. [View the **NetSuite** documentation for Classes for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/classification.html).
          - `id` string, required — The ID of the Class associated with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/classes](https://developers.routable.com/reference/list-accounting-software-objects).
        - `location` LedgersNetsuiteNetSuiteLocation — The Location (such as 'San Francisco', 'Store #1234') to associate with this Payable, Receivable or line item. [View the **NetSuite** documentation for Locations for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/location.html).
          - `id` string, required — The location ID to associate with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/locations](https://developers.routable.com/reference/list-accounting-software-objects).
        - `memo` string — A message (or notes) about the transaction.
        - `posting_period` LedgersNetsuiteNetSuitePostingPeriod — The Posting Period (such as 'Fiscal Year 2002') to associate with this Payable or Receivable. [View the **NetSuite** documentation for Posting Periods for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/accountingperiod.html).
          - `id` string, required — The posting period ID to associate with this Payable or Receivable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounting_periods](https://developers.routable.com/reference/list-accounting-software-objects).
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
      - LedgersCommonLedgerCommonPayableMeta
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
    - `line_items` object
      - `object` 'List', required — The object’s type (`List`).
      - `results` ItemsPayablesCommonPayableLineItem[], required
        - `account` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an account ID to track this line item against your chart of accounts. Either `item` or `account` is required depending on the style of line item you are creating.
          - `id` string, required
        - `amount` string, decimal — The line item's total amount.
        - `description` string — The line item's description.
        - `is_taxable` boolean — When working with **QuickBooks Online**, specifies whether tax should be collected for this line item. To mark a line item as taxable, the `billable` field must be `billable`.
        - `item` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an item ID to track this line item against inventory items. Either `item` or `account` is required depending on the style of line item you are creating.
          - `id` string, required
        - `quantity` string, decimal — The line item's quantity.
        - `style` 'item' — The line item's style. When working without an accounting software integration, or when integrated with Xero, you must use `item`. To attach the line item to an account in your accounting software's chart of accounts, use `account`.
        - `tax` object — When working with **NetSuite** and **Xero**, you may supply a tax ID to specify the tax rate to apply to this line item.
          - `id` string, required
        - `unit_price` string, decimal — The line item's price per unit.
        - `object` 'LineItem', required — The object’s type (`LineItem`).
        - `id` string, uuid, nullable — The ID of the line item.
        - `ledger` union — Fields specific to your accounting software integration.
          - LedgersXeroXeroNewPayableLineItemMeta
          - LedgersQboQBONewPayableLineItemMeta
            - `billable` 'billable' | 'not-billable' — A billable expense is an expense you incur on your customer's behalf when you perform work for them.
            - `class` LedgersQboQBOClass — The class ID to associate this Payable, Receivable or line item with in **QuickBooks Online**. You must enable classes in **QuickBooks Online** to use this attribute.
              - …
            - `customer_ref` string — The reference number for the customer that you would like to track this line item against.
            - `department` LedgersQboQBODepartment — The department or location ID to associate this Payable, Receivable or line item with in **QuickBooks Online**.
              - …
            - `markup` string, decimal — Markup amount expressed as a percent of charges already entered in the current transaction. To enter a rate of 10% use "10.0", not "0.01".
          - LedgersNetsuiteNetSuiteNewPayableLineItemMeta
            - `amortiz_start_date` string, date — The amortization start date.
            - `amortization_end_date` string, date — The amortization end date.
            - `amortization_residual` string — The residual value (the estimated value at the end of its lease term or useful life).
            - `amortization_sched` LedgersNetsuiteNetSuiteAmortizationSchedule — The **NetSuite** Amortization Template to associate with this line item. [View the **NetSuite** documentation for Amortization Template for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/amortizationtemplate.html).
              - …
            - `class` LedgersNetsuiteNetSuiteClass — The **NetSuite** Class (such as 'Furniture', 'Hardware', 'Accessories') to associate with this Payable, Receivable, or line item. [View the **NetSuite** documentation for Classes for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/classification.html).
              - …
            - `customer_ref` string — The reference number for the customer that you would like to track this line item against.
            - `department` LedgersNetsuiteNetSuiteDepartment — The **NetSuite** department (such as 'Engineering', 'Sales') to associate with this line item. [View the **NetSuite** documentation for Departments for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/department.html).
              - …
            - `location` LedgersNetsuiteNetSuiteLocation — The Location (such as 'San Francisco', 'Store #1234') to associate with this Payable, Receivable or line item. [View the **NetSuite** documentation for Locations for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/location.html).
              - …
          - LedgersSageSageNewPayableLineItemMeta — Configuration for a line item which may be optional or required depending on your Sage configuration.
            - `account` LedgersSageSageAccount — An Account in your **Sage Intacct** chart of accounts (such as '1040 - Office Supplies') in which to track this line item.
              - …
            - `class` LedgersSageSageClass — A Class (also called a *Channel*) in your **Sage Intacct** chart of accounts (such as 'Furniture') in which to track this line item.
              - …
            - `contract` LedgersSageSageContract — A Contract in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `customer_ref` string — The reference number for the customer that you would like to track this line item against.
            - `department` LedgersSageSageDepartment — A Department in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `employee` LedgersSageSageEmployee — An Employee in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `item` LedgersSageSageItem — An Item in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `location` LedgersSageSageLocation — A Location in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `project` LedgersSageSageProject — A Project in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `task` LedgersSageSageTask — A Task in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `vendor_ref` string — The reference number for the vendor that you would like to track this line item against.
            - `warehouse` LedgersSageSageWarehouse — A Warehouse in your **Sage Intacct** implementation against which to track this line item.
              - …
        - `purchase_order_id` string — The ID of the purchase order in your linked accounting software.
        - `purchase_order_line_item_id` string — The ID of the line item in the purchase order referenced by `purchase_order_id`.
    - `pay_to_company` CompaniesCompactCompany, required
      - `object` 'Company', required — The object’s type (`Company`).
      - `id` string, uuid, required — The Company ID.
      - `display_name` string, required — The Company's name for display in the Routable Dashboard.
      - `links` CompaniesCompanyLinks, required — Related links.
        - `self` string, uri-reference, required — Link to this object.
        - `compliance_checks` string, uri-reference, required — Link to this Company's Compliance Reports.
        - `contacts` string, uri-reference, required — Link to this Company's Contacts.
        - `payables` string, uri-reference, required — Link to this Company's Payables.
        - `payment_methods` string, uri-reference, required — Link to this Company's Payment Methods.
        - `receivables` string, uri-reference, required — Link to this Company's Receivables.
        - `tax_forms` string, uri-reference, required — Link to this Company's most recent TaxForm.
    - `pay_to_payment_method` union — The `PaymentMethod` that will receive the funds.
      - PaymentMethodsAddressCompactPaymentMethodAddress
        - `object` 'PaymentMethod', required — The object’s type (`PaymentMethod`).
        - `id` string, uuid, required — The `PaymentMethod` ID.
        - `links` PaymentMethodsCommonPaymentMethodLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
          - `company` string, uri-reference, required — Link to this `PaymentMethod`'s `Company`.
        - `type` 'address', required — The type of payment method
        - `type_details` PaymentMethodsAddressPaymentMethodAddressTypeDetails, required
          - `address_line_1` string, required — The address' first line.
          - `address_line_2` string, nullable — The address' second line.
          - `city` string, required — The address' city.
          - `country` 'AD' | 'AE' | 'AF' | 'AG' | 'AI' | 'AL' | 'AM' | 'AO' | 'AR' | 'AS' | 'AT' | 'AU' | 'AW' | 'AX' | 'AZ' | 'BA' | 'BB' | 'BD' | 'BE' | 'BF' | 'BG' | 'BH' | 'BI' | 'BJ' | 'BL' | 'BM' | 'BN' | 'BO' | 'BQ' | 'BR' | 'BS' | 'BT' | 'BW' | 'BZ' | 'CA' | 'CC' | 'CD' | 'CF' | 'CG' | 'CH' | 'CI' | 'CL' | 'CM' | 'CN' | 'CO' | 'CR' | 'CV' | 'CX' | 'CY' | 'CZ' | 'DE' | 'DJ' | 'DK' | 'DM' | 'DO' | 'DZ' | 'EC' | 'EE' | 'EG' | 'EH' | 'ER' | 'ES' | 'ET' | 'FI' | 'FJ' | 'FK' | 'FM' | 'FO' | 'FR' | 'GA' | 'GB' | 'GD' | 'GE' | 'GF' | 'GG' | 'GH' | 'GI' | 'GL' | 'GM' | 'GN' | 'GP' | 'GQ' | 'GR' | 'GT' | 'GU' | 'GW' | 'GY' | 'HK' | 'HM' | 'HN' | 'HR' | 'HT' | 'HU' | 'ID' | 'IE' | 'IL' | 'IM' | 'IN' | 'IQ' | 'IS' | 'IT' | 'JE' | 'JM' | 'JO' | 'JP' | 'KE' | 'KG' | 'KH' | 'KI' | 'KM' | 'KN' | 'KR' | 'KW' | 'KY' | 'KZ' | 'LA' | 'LB' | 'LC' | 'LI' | 'LK' | 'LR' | 'LS' | 'LT' | 'LU' | 'LV' | 'MA' | 'MC' | 'MD' | 'ME' | 'MF' | 'MG' | 'MH' | 'MK' | 'ML' | 'MN' | 'MO' | 'MP' | 'MQ' | 'MR' | 'MS' | 'MT' | 'MU' | 'MV' | 'MX' | 'MW' | 'MY' | 'MZ' | 'NA' | 'NC' | 'NE' | 'NF' | 'NG' | 'NI' | 'NL' | 'NO' | 'NP' | 'NR' | 'NU' | 'NZ' | 'OM' | 'PA' | 'PE' | 'PF' | 'PG' | 'PH' | 'PK' | 'PL' | 'PM' | 'PN' | 'PR' | 'PT' | 'PW' | 'PY' | 'QA' | 'RE' | 'RO' | 'RS' | 'RW' | 'SA' | 'SB' | 'SC' | 'SE' | 'SG' | 'SH' | 'SI' | 'SJ' | 'SK' | 'SL' | 'SM' | 'SN' | 'SO' | 'SR' | 'ST' | 'SV' | 'SX' | 'SZ' | 'TC' | 'TD' | 'TF' | 'TG' | 'TH' | 'TJ' | 'TK' | 'TL' | 'TM' | 'TN' | 'TO' | 'TR' | 'TT' | 'TV' | 'TW' | 'TZ' | 'UA' | 'UG' | 'UM' | 'US' | 'UY' | 'UZ' | 'VA' | 'VC' | 'VI' | 'VN' | 'VU' | 'XK' | 'WF' | 'WS' | 'XX' | 'YE' | 'YT' | 'ZA' | 'ZM' | 'ZW', required — Country code in ISO 3166-1 Alpha-2 format.
          - `postal_code` string, required — The address' postal code.
          - `state` string, required — The address' state, province or territory.
          - `attention_line` string — If provided, this will be added as a 'to the attention line of' line printed on the envelope the check is mailed in.
          - `print_business_name` string, nullable — The business name to print on the check as the payee. If `recipient` is omitted, this will also be printed as the recipient on the envelope when the check is mailed.
          - `print_name` string, nullable — The payee name to print on the check. If `print_business_name` is omitted, this will also be printed as the recipient on the envelope when the check is mailed.
          - `recipient` string, nullable — The recipient that will be printed on the envelope when the check is mailed. If omitted, `print_business_name` will be used.
      - PaymentMethodsBankCompactPaymentMethodBank
        - `object` 'PaymentMethod', required — The object’s type (`PaymentMethod`).
        - `id` string, uuid, required — The `PaymentMethod` ID.
        - `links` PaymentMethodsCommonPaymentMethodLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
          - `company` string, uri-reference, required — Link to this `PaymentMethod`'s `Company`.
        - `type` 'bank', required — The type of Payment Method
        - `type_details` PaymentMethodsBankPaymentMethodBankTypeDetails, required
          - `account_number` string, required — The bank account number. In responses, all but the last four digits will be masked for security.
          - `account_type` 'checking' | 'savings', required — The type of bank account.
          - `currency_code` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
          - `institution_name` string, required — The bank's name.
          - `logo` string, uri — The URL of the bank's logo in PNG format.
          - `primary_color` string — The bank's primary color hex code.
          - `routing_number` string — The bank's routing number.
      - PaymentMethodsInternationalCompactPaymentMethodInternational
        - `object` 'PaymentMethod', required — The object’s type (`PaymentMethod`).
        - `id` string, uuid, required — The `PaymentMethod` ID.
        - `links` PaymentMethodsCommonPaymentMethodLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
          - `company` string, uri-reference, required — Link to this `PaymentMethod`'s `Company`.
        - `type` 'international', required — The type of Payment Method
        - `type_details` PaymentMethodsInternationalPaymentMethodInternationalTypeDetails, required
          - `account_number` string, nullable — Bank account number. In responses, all but the last four digits will be masked for security.
          - `bank_code` string, nullable — Bank or institution number.
          - `beneficiary_details` object, nullable — Extra beneficiary data.
          - `bic_swift` string, nullable — SWIFT business code.
          - `branch_code` string, nullable — Branch number.
          - `bsb_code` string, nullable — Bank State Branch code.
          - `clabe` string, nullable — A CLABE (Clave Bancaria Estandarizada | Standardized Bank Code) is necessary for sending payments to vendors in Mexico.
          - `cnaps` string, nullable — A CNAPS (China National Advanced Payment System) code is necessary for sending payments via Chinese Yuan (CNY) to vendors in China.
          - `country_code` 'AD' | 'AE' | 'AF' | 'AG' | 'AI' | 'AL' | 'AM' | 'AO' | 'AR' | 'AS' | 'AT' | 'AU' | 'AW' | 'AX' | 'AZ' | 'BA' | 'BB' | 'BD' | 'BE' | 'BF' | 'BG' | 'BH' | 'BI' | 'BJ' | 'BL' | 'BM' | 'BN' | 'BO' | 'BQ' | 'BR' | 'BS' | 'BT' | 'BW' | 'BZ' | 'CA' | 'CC' | 'CD' | 'CF' | 'CG' | 'CH' | 'CI' | 'CL' | 'CM' | 'CN' | 'CO' | 'CR' | 'CV' | 'CX' | 'CY' | 'CZ' | 'DE' | 'DJ' | 'DK' | 'DM' | 'DO' | 'DZ' | 'EC' | 'EE' | 'EG' | 'EH' | 'ER' | 'ES' | 'ET' | 'FI' | 'FJ' | 'FK' | 'FM' | 'FO' | 'FR' | 'GA' | 'GB' | 'GD' | 'GE' | 'GF' | 'GG' | 'GH' | 'GI' | 'GL' | 'GM' | 'GN' | 'GP' | 'GQ' | 'GR' | 'GT' | 'GU' | 'GW' | 'GY' | 'HK' | 'HM' | 'HN' | 'HR' | 'HT' | 'HU' | 'ID' | 'IE' | 'IL' | 'IM' | 'IN' | 'IQ' | 'IS' | 'IT' | 'JE' | 'JM' | 'JO' | 'JP' | 'KE' | 'KG' | 'KH' | 'KI' | 'KM' | 'KN' | 'KR' | 'KW' | 'KY' | 'KZ' | 'LA' | 'LB' | 'LC' | 'LI' | 'LK' | 'LR' | 'LS' | 'LT' | 'LU' | 'LV' | 'MA' | 'MC' | 'MD' | 'ME' | 'MF' | 'MG' | 'MH' | 'MK' | 'ML' | 'MN' | 'MO' | 'MP' | 'MQ' | 'MR' | 'MS' | 'MT' | 'MU' | 'MV' | 'MX' | 'MW' | 'MY' | 'MZ' | 'NA' | 'NC' | 'NE' | 'NF' | 'NG' | 'NI' | 'NL' | 'NO' | 'NP' | 'NR' | 'NU' | 'NZ' | 'OM' | 'PA' | 'PE' | 'PF' | 'PG' | 'PH' | 'PK' | 'PL' | 'PM' | 'PN' | 'PR' | 'PT' | 'PW' | 'PY' | 'QA' | 'RE' | 'RO' | 'RS' | 'RW' | 'SA' | 'SB' | 'SC' | 'SE' | 'SG' | 'SH' | 'SI' | 'SJ' | 'SK' | 'SL' | 'SM' | 'SN' | 'SO' | 'SR' | 'ST' | 'SV' | 'SX' | 'SZ' | 'TC' | 'TD' | 'TF' | 'TG' | 'TH' | 'TJ' | 'TK' | 'TL' | 'TM' | 'TN' | 'TO' | 'TR' | 'TT' | 'TV' | 'TW' | 'TZ' | 'UA' | 'UG' | 'UM' | 'US' | 'UY' | 'UZ' | 'VA' | 'VC' | 'VI' | 'VN' | 'VU' | 'XK' | 'WF' | 'WS' | 'XX' | 'YE' | 'YT' | 'ZA' | 'ZM' | 'ZW' — Country code in ISO 3166-1 Alpha-2 format.
          - `currency_code` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
          - `iban` string, nullable — International Bank Account Number.
          - `ifsc` string, nullable — An IFSC (Indian Financial System Code) code is necessary for sending payments via Indian Rupees (INR) to vendors in India.
          - `institution_name` string, nullable — Bank name.
          - `payment_types` 'all' | 'priority' | 'regular' — Legacy SWIFT payment types supported. This field is `deprecated` and will be ignored if submitted.
          - `recipient_address` SharedAddress
            - `address_line_1` string, required — The address' first line.
            - `address_line_2` string, nullable — The address' second line.
            - `city` string, required — The address' city.
            - `country` 'AD' | 'AE' | 'AF' | 'AG' | 'AI' | 'AL' | 'AM' | 'AO' | 'AR' | 'AS' | 'AT' | 'AU' | 'AW' | 'AX' | 'AZ' | 'BA' | 'BB' | 'BD' | 'BE' | 'BF' | 'BG' | 'BH' | 'BI' | 'BJ' | 'BL' | 'BM' | 'BN' | 'BO' | 'BQ' | 'BR' | 'BS' | 'BT' | 'BW' | 'BZ' | 'CA' | 'CC' | 'CD' | 'CF' | 'CG' | 'CH' | 'CI' | 'CL' | 'CM' | 'CN' | 'CO' | 'CR' | 'CV' | 'CX' | 'CY' | 'CZ' | 'DE' | 'DJ' | 'DK' | 'DM' | 'DO' | 'DZ' | 'EC' | 'EE' | 'EG' | 'EH' | 'ER' | 'ES' | 'ET' | 'FI' | 'FJ' | 'FK' | 'FM' | 'FO' | 'FR' | 'GA' | 'GB' | 'GD' | 'GE' | 'GF' | 'GG' | 'GH' | 'GI' | 'GL' | 'GM' | 'GN' | 'GP' | 'GQ' | 'GR' | 'GT' | 'GU' | 'GW' | 'GY' | 'HK' | 'HM' | 'HN' | 'HR' | 'HT' | 'HU' | 'ID' | 'IE' | 'IL' | 'IM' | 'IN' | 'IQ' | 'IS' | 'IT' | 'JE' | 'JM' | 'JO' | 'JP' | 'KE' | 'KG' | 'KH' | 'KI' | 'KM' | 'KN' | 'KR' | 'KW' | 'KY' | 'KZ' | 'LA' | 'LB' | 'LC' | 'LI' | 'LK' | 'LR' | 'LS' | 'LT' | 'LU' | 'LV' | 'MA' | 'MC' | 'MD' | 'ME' | 'MF' | 'MG' | 'MH' | 'MK' | 'ML' | 'MN' | 'MO' | 'MP' | 'MQ' | 'MR' | 'MS' | 'MT' | 'MU' | 'MV' | 'MX' | 'MW' | 'MY' | 'MZ' | 'NA' | 'NC' | 'NE' | 'NF' | 'NG' | 'NI' | 'NL' | 'NO' | 'NP' | 'NR' | 'NU' | 'NZ' | 'OM' | 'PA' | 'PE' | 'PF' | 'PG' | 'PH' | 'PK' | 'PL' | 'PM' | 'PN' | 'PR' | 'PT' | 'PW' | 'PY' | 'QA' | 'RE' | 'RO' | 'RS' | 'RW' | 'SA' | 'SB' | 'SC' | 'SE' | 'SG' | 'SH' | 'SI' | 'SJ' | 'SK' | 'SL' | 'SM' | 'SN' | 'SO' | 'SR' | 'ST' | 'SV' | 'SX' | 'SZ' | 'TC' | 'TD' | 'TF' | 'TG' | 'TH' | 'TJ' | 'TK' | 'TL' | 'TM' | 'TN' | 'TO' | 'TR' | 'TT' | 'TV' | 'TW' | 'TZ' | 'UA' | 'UG' | 'UM' | 'US' | 'UY' | 'UZ' | 'VA' | 'VC' | 'VI' | 'VN' | 'VU' | 'XK' | 'WF' | 'WS' | 'XX' | 'YE' | 'YT' | 'ZA' | 'ZM' | 'ZW', required — Country code in ISO 3166-1 Alpha-2 format.
            - `postal_code` string, required — The address' postal code.
            - `state` string — The address' state, province or territory.
          - `sort_code` string, nullable — Bank and branch code used in the British banking industry.
      - PaymentMethodsPaypalCompactPaymentMethodPayPal
        - `object` 'PaymentMethod', required — The object’s type (`PaymentMethod`).
        - `id` string, uuid, required — The `PaymentMethod` ID.
        - `links` PaymentMethodsCommonPaymentMethodLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
          - `company` string, uri-reference, required — Link to this `PaymentMethod`'s `Company`.
        - `type` 'paypal', required — The type of Payment Method
        - `type_details` PaymentMethodsPaypalPaymentMethodPayPalTypeDetails, required
          - `email` string, email, required — The Company's PayPal email address.
    - `send_on` string, date, nullable, required — The date the payment is scheduled to be sent.
    - `withdraw_from_account` union
      - object
        - `object` 'Account', required — The object’s type (`Account`).
        - `id` string, uuid, required — The Account ID.
        - `links` AccountsAccountLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
        - `type` 'bank', required — The type of Account
        - `type_details` AccountsAccountBankTypeDetails, required
          - `account_number` string, required — The bank account number. In responses, all but the last four digits will be masked for security.
          - `account_type` 'checking' | 'savings', required — The type of bank account.
          - `institution_name` string, required — The bank's name.
          - `logo` string, uri — The URL of the bank's logo in PNG format.
          - `primary_color` string — The bank's primary color hex code.
          - `routing_number` string, required — The bank's nine-digit routing number.
      - object
        - `object` 'Account', required — The object’s type (`Account`).
        - `id` string, uuid, required — The Account ID.
        - `links` AccountsAccountLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
        - `type` 'balance', required — The type of Account
        - `type_details` object, required
      - object
        - `object` 'Account', required — The object’s type (`Account`).
        - `id` string, uuid, required — The Account ID.
        - `links` AccountsAccountLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
        - `type` 'paypal', required — The type of Account
        - `type_details` AccountsAccountPayPalTypeDetails, required
  - ItemsPayablesInternationalPayableInternational
    - `object` 'Payable', required — The object’s type (`Payable`).
    - `pay_to_payment_method` object, nullable — The `PaymentMethod` that will receive the funds.
      - `object` 'PaymentMethod', required — The object’s type (`PaymentMethod`).
      - `id` string, uuid, required — The `PaymentMethod` ID.
      - `links` PaymentMethodsCommonPaymentMethodLinks, required — Related links.
        - `self` string, uri-reference, required — Link to this object.
        - `company` string, uri-reference, required — Link to this `PaymentMethod`'s `Company`.
      - `type` 'international', required — The type of Payment Method
      - `type_details` PaymentMethodsInternationalPaymentMethodInternationalTypeDetails, required
        - `account_number` string, nullable — Bank account number. In responses, all but the last four digits will be masked for security.
        - `bank_code` string, nullable — Bank or institution number.
        - `beneficiary_details` object, nullable — Extra beneficiary data.
        - `bic_swift` string, nullable — SWIFT business code.
        - `branch_code` string, nullable — Branch number.
        - `bsb_code` string, nullable — Bank State Branch code.
        - `clabe` string, nullable — A CLABE (Clave Bancaria Estandarizada | Standardized Bank Code) is necessary for sending payments to vendors in Mexico.
        - `cnaps` string, nullable — A CNAPS (China National Advanced Payment System) code is necessary for sending payments via Chinese Yuan (CNY) to vendors in China.
        - `country_code` 'AD' | 'AE' | 'AF' | 'AG' | 'AI' | 'AL' | 'AM' | 'AO' | 'AR' | 'AS' | 'AT' | 'AU' | 'AW' | 'AX' | 'AZ' | 'BA' | 'BB' | 'BD' | 'BE' | 'BF' | 'BG' | 'BH' | 'BI' | 'BJ' | 'BL' | 'BM' | 'BN' | 'BO' | 'BQ' | 'BR' | 'BS' | 'BT' | 'BW' | 'BZ' | 'CA' | 'CC' | 'CD' | 'CF' | 'CG' | 'CH' | 'CI' | 'CL' | 'CM' | 'CN' | 'CO' | 'CR' | 'CV' | 'CX' | 'CY' | 'CZ' | 'DE' | 'DJ' | 'DK' | 'DM' | 'DO' | 'DZ' | 'EC' | 'EE' | 'EG' | 'EH' | 'ER' | 'ES' | 'ET' | 'FI' | 'FJ' | 'FK' | 'FM' | 'FO' | 'FR' | 'GA' | 'GB' | 'GD' | 'GE' | 'GF' | 'GG' | 'GH' | 'GI' | 'GL' | 'GM' | 'GN' | 'GP' | 'GQ' | 'GR' | 'GT' | 'GU' | 'GW' | 'GY' | 'HK' | 'HM' | 'HN' | 'HR' | 'HT' | 'HU' | 'ID' | 'IE' | 'IL' | 'IM' | 'IN' | 'IQ' | 'IS' | 'IT' | 'JE' | 'JM' | 'JO' | 'JP' | 'KE' | 'KG' | 'KH' | 'KI' | 'KM' | 'KN' | 'KR' | 'KW' | 'KY' | 'KZ' | 'LA' | 'LB' | 'LC' | 'LI' | 'LK' | 'LR' | 'LS' | 'LT' | 'LU' | 'LV' | 'MA' | 'MC' | 'MD' | 'ME' | 'MF' | 'MG' | 'MH' | 'MK' | 'ML' | 'MN' | 'MO' | 'MP' | 'MQ' | 'MR' | 'MS' | 'MT' | 'MU' | 'MV' | 'MX' | 'MW' | 'MY' | 'MZ' | 'NA' | 'NC' | 'NE' | 'NF' | 'NG' | 'NI' | 'NL' | 'NO' | 'NP' | 'NR' | 'NU' | 'NZ' | 'OM' | 'PA' | 'PE' | 'PF' | 'PG' | 'PH' | 'PK' | 'PL' | 'PM' | 'PN' | 'PR' | 'PT' | 'PW' | 'PY' | 'QA' | 'RE' | 'RO' | 'RS' | 'RW' | 'SA' | 'SB' | 'SC' | 'SE' | 'SG' | 'SH' | 'SI' | 'SJ' | 'SK' | 'SL' | 'SM' | 'SN' | 'SO' | 'SR' | 'ST' | 'SV' | 'SX' | 'SZ' | 'TC' | 'TD' | 'TF' | 'TG' | 'TH' | 'TJ' | 'TK' | 'TL' | 'TM' | 'TN' | 'TO' | 'TR' | 'TT' | 'TV' | 'TW' | 'TZ' | 'UA' | 'UG' | 'UM' | 'US' | 'UY' | 'UZ' | 'VA' | 'VC' | 'VI' | 'VN' | 'VU' | 'XK' | 'WF' | 'WS' | 'XX' | 'YE' | 'YT' | 'ZA' | 'ZM' | 'ZW' — Country code in ISO 3166-1 Alpha-2 format.
        - `currency_code` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
        - `iban` string, nullable — International Bank Account Number.
        - `ifsc` string, nullable — An IFSC (Indian Financial System Code) code is necessary for sending payments via Indian Rupees (INR) to vendors in India.
        - `institution_name` string, nullable — Bank name.
        - `payment_types` 'all' | 'priority' | 'regular' — Legacy SWIFT payment types supported. This field is `deprecated` and will be ignored if submitted.
        - `recipient_address` SharedAddress
          - `address_line_1` string, required — The address' first line.
          - `address_line_2` string, nullable — The address' second line.
          - `city` string, required — The address' city.
          - `country` 'AD' | 'AE' | 'AF' | 'AG' | 'AI' | 'AL' | 'AM' | 'AO' | 'AR' | 'AS' | 'AT' | 'AU' | 'AW' | 'AX' | 'AZ' | 'BA' | 'BB' | 'BD' | 'BE' | 'BF' | 'BG' | 'BH' | 'BI' | 'BJ' | 'BL' | 'BM' | 'BN' | 'BO' | 'BQ' | 'BR' | 'BS' | 'BT' | 'BW' | 'BZ' | 'CA' | 'CC' | 'CD' | 'CF' | 'CG' | 'CH' | 'CI' | 'CL' | 'CM' | 'CN' | 'CO' | 'CR' | 'CV' | 'CX' | 'CY' | 'CZ' | 'DE' | 'DJ' | 'DK' | 'DM' | 'DO' | 'DZ' | 'EC' | 'EE' | 'EG' | 'EH' | 'ER' | 'ES' | 'ET' | 'FI' | 'FJ' | 'FK' | 'FM' | 'FO' | 'FR' | 'GA' | 'GB' | 'GD' | 'GE' | 'GF' | 'GG' | 'GH' | 'GI' | 'GL' | 'GM' | 'GN' | 'GP' | 'GQ' | 'GR' | 'GT' | 'GU' | 'GW' | 'GY' | 'HK' | 'HM' | 'HN' | 'HR' | 'HT' | 'HU' | 'ID' | 'IE' | 'IL' | 'IM' | 'IN' | 'IQ' | 'IS' | 'IT' | 'JE' | 'JM' | 'JO' | 'JP' | 'KE' | 'KG' | 'KH' | 'KI' | 'KM' | 'KN' | 'KR' | 'KW' | 'KY' | 'KZ' | 'LA' | 'LB' | 'LC' | 'LI' | 'LK' | 'LR' | 'LS' | 'LT' | 'LU' | 'LV' | 'MA' | 'MC' | 'MD' | 'ME' | 'MF' | 'MG' | 'MH' | 'MK' | 'ML' | 'MN' | 'MO' | 'MP' | 'MQ' | 'MR' | 'MS' | 'MT' | 'MU' | 'MV' | 'MX' | 'MW' | 'MY' | 'MZ' | 'NA' | 'NC' | 'NE' | 'NF' | 'NG' | 'NI' | 'NL' | 'NO' | 'NP' | 'NR' | 'NU' | 'NZ' | 'OM' | 'PA' | 'PE' | 'PF' | 'PG' | 'PH' | 'PK' | 'PL' | 'PM' | 'PN' | 'PR' | 'PT' | 'PW' | 'PY' | 'QA' | 'RE' | 'RO' | 'RS' | 'RW' | 'SA' | 'SB' | 'SC' | 'SE' | 'SG' | 'SH' | 'SI' | 'SJ' | 'SK' | 'SL' | 'SM' | 'SN' | 'SO' | 'SR' | 'ST' | 'SV' | 'SX' | 'SZ' | 'TC' | 'TD' | 'TF' | 'TG' | 'TH' | 'TJ' | 'TK' | 'TL' | 'TM' | 'TN' | 'TO' | 'TR' | 'TT' | 'TV' | 'TW' | 'TZ' | 'UA' | 'UG' | 'UM' | 'US' | 'UY' | 'UZ' | 'VA' | 'VC' | 'VI' | 'VN' | 'VU' | 'XK' | 'WF' | 'WS' | 'XX' | 'YE' | 'YT' | 'ZA' | 'ZM' | 'ZW', required — Country code in ISO 3166-1 Alpha-2 format.
          - `postal_code` string, required — The address' postal code.
          - `state` string — The address' state, province or territory.
        - `sort_code` string, nullable — Bank and branch code used in the British banking industry.
    - `type` 'international', required — The `type` of `Payable`.
    - `type_details` ItemsPayablesInternationalPayableInternationalTypeDetails, required
      - `addenda_record` string, nullable — An ACH addenda record adds supplemental data to a transaction. This will cost an [additional fee](https://docs.routable.com/hc/en-us/articles/21511804223501-Addenda-Records). This is only valid for `Payables` to `Companies` of `type=business`.
      - `purpose_code` string, nullable — The purpose code for this Payable. Required for some countries. Please see our [Supported Countries and Territories Explorer](https://developers.routable.com/docs/supported-countries-and-territories) to confirm the requirements for your destination Country. Query the [List Purpose Codes](https://developers.routable.com/reference/list-country-purpose-codes) endpoint to list potential purpose codes for a given Country and currency combination.
      - `swift_charge_option` 'sha' | 'our', nullable — Specifies whether the SWIFT transfer fee is shared (`sha`) between the sender and the recipient, or paid in full by the sender (`our`). For `international_ach` payments the value should be `our` or left blank.
      - `transaction_id` string, nullable — The ACH ID on your bank statement.
    - `id` string, uuid, required — The resource ID.
    - `amount` string, decimal, required — The total amount for this payment.
    - `amount_due` string, decimal, required — The total amount remaining due for this payment.
    - `amount_recipient` number, double — The amount that will be sent to the vendor.
    - `amount_sender` number, double — The amount paid by the sender.
    - `amount_paid` string, decimal, required — The total amount paid for this payment.
    - `approved_at` string, date-time, nullable, required — The date the payment was approved.
    - `bill_number` string, nullable, required — The bill number for this item. If you have integrated your accounting software, this will match the bill number in that application.
    - `created_at` string, date-time — The creation date and time of the Item.
    - `currency_code` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `currency_code_recipient` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `currency_code_sender` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `due_on` string, date, required — The date the payment is due.
    - `exchange_rate` string — The exchange rate used to convert the amount_sender into the amount_recipient.
    - `expected_on` string, date, nullable, required — The date the payment is expected to hit the receiving account.
    - `external_id` string, nullable, required — An external ID that you have assigned to this transaction - for example, an invoice or payment number in your application.
    - `fixed_side` 'sender' | 'recipient' — Which amount associated with the payment is fixed and will be used to determine the other side's amount.
    - `issued_on` string, date, required — The date the invoice was issued.
    - `is_exchange_rate_locked` boolean — Designate whether or not the exchange_rate value is actually the one that will be used to perform the currency conversion (true) or if it is an estimate based on the current rate (false).
    - `reference` string, nullable — This field is used as an additional reference number for the item when Routable is **not** integrated with your accounting software. If you have integrated your accounting software with Routable, this field is not used.
    - `sent_on` string, date, nullable, required — The date the payment or invoice was sent to the receiving Company. If the Payable or Receivable is created after the [cut-off time](https://docs.routable.com/en/articles/5149655-bank-transfer-payment-delivery-options) for the chosen `delivery_method`, the `sent_on` date will reflect the date the transaction was actually sent, which may be the following business day after the requested `send_on` date.
    - `status` 'canceled' | 'completed' | 'compliance_hold' | 'created' | 'externally_paid' | 'failed' | 'initiated' | 'issue' | 'needs_approval' | 'new' | 'pending' | 'po_discrepancy_hold' | 'processing' | 'ready_to_send' | 'scheduled', required — The status of the payment: | Value | Description | | `canceled` | The payment was canceled. No funds were sent to the **receiver**. | | `completed` | The payment was completed. The **receiver** has received the funds at the specified `pay_to_payment_method`. | | `compliance_hold` | The payment has been held pending resolution of a **compliance hold.** See the `Company`'s `compliance_checks` for details. | | `created` | The payment is newly created. | | `externally_paid` | The payment is a record of a payment made outside of Routable. | `failed` | The payment failed at some point on its journey through the banking system. See `failure_detail` for details and resolutions. | | `initiated` | The transfer of funds has begun. This corresponds to the "In Transit" state in the Routable UI. | | `issue` | The payment failed at some point while Routable was creating it. See `failure_detail` for details and resolutions. | | `needs_approval` | The payment has been paused until it receives approval from all required approvers. | | `pending` | The payment is held pending the `pay_to_company`'s selection of a payment and/or `type` (`vendor_choice` `Payables`). | | `po_discrepancy_hold` | The payment has been held pending resolution of a purchase order discrepancy. | | `processing` | The payment is currently being processed in Routable. (**Note:** As payment are only in this status for a few seconds, `payable.status_changed` webhooks are **not fired** for it.) | | `ready_to_send` | The payment is waiting to be manually sent, either through the Routable Dashboard or an update to `send_on`. | | `scheduled` | The payment is scheduled to be sent on the future date referenced in `send_on`. |
    - `status_changed_at` string, date-time, required — The datetime of the last status change.
    - `status_changes` ItemsCommonStatusChangeItem[], required — The status timeline, sorted from oldest to newest.
      - `changed_at` string, date-time, required — The datetime associated with this status change.
      - `status` 'analyzing' | 'canceled' | 'completed' | 'compliance_hold' | 'created' | 'externally_paid' | 'failed' | 'import' | 'initiated' | 'issue' | 'needs_approval' | 'new' | 'ocr' | 'pending' | 'po_discrepancy_hold' | 'processing' | 'ready_to_send' | 'scheduled', required — The new status of the `Payable` as of the date/time indicated in `changed_at`. | Value | Description | | `analyzing` | Routable is processing payment data for a payment created via OCR in the Routable Dashboard. | | `canceled` | The payment was canceled. No funds were sent to the **receiver**. | | `completed` | The payment was completed. The **receiver** has received the funds at the specified `pay_to_payment_method`. | | `compliance_hold` | The payment has been held pending resolution of a **compliance hold.** See the `Company`'s `compliance_checks` for details. | | `created` | The payment is newly created. | | `externally_paid` | The payment is a record of a payment made outside of Routable. | `failed` | The payment failed at some point on its journey through the banking system. See `failure_detail` for details and resolutions. | | `initiated` | The transfer of funds has begun. This corresponds to the "In Transit" state in the Routable UI. | | `issue` | The payment failed at some point while Routable was creating it. See `failure_detail` for details and resolutions. | | `needs_approval` | The payment has been paused until it receives approval from all required approvers. | | `new` | The payment is newly created. | | `ocr` | Routable is processing payment data for a payment created via OCR in the Routable Dashboard. | | `pending` | The payment is held pending the `pay_to_company`'s selection of a payment and/or `type` (`vendor_choice` `Payables`). | | `po_discrepancy_hold` | The payment has been held pending resolution of a purchase order discrepancy. | | `processing` | The payment is currently being processed in Routable. (**Note:** As payment are only in this status for a few seconds, `payable.status_changed` webhooks are **not fired** for it.) | | `ready_to_send` | The payment is waiting to be manually sent, either through the Routable Dashboard or an update to `send_on`. | | `scheduled` | The payment is scheduled to be sent on the future date referenced in `send_on`. |
    - `links` ItemsCommonItemLinks, required — Related links.
      - `self` string, uri-reference, required — Link to this object.
      - `confirmation` string, nullable — Link to download payment confirmation document as a PDF.
    - `version` integer — The current version of the resource that is incremental per change, starting at 1 at the moment of creation.
    - `attachments` object, required — A list of file attachments to this resource.
      - `object` 'List', required — The object’s type (`List`).
      - `results` ItemsPayablesCommonPayableAttachment[], required
        - `object` 'Attachment', required
        - `id` string, uuid, required — The Attachment ID.
        - `name` string, required — The filename.
        - `mime_type` string, required — The file's MIME type.
        - `url` string, uri, required — A publicly accessibly URL that expires in 1 month.
        - `include_in_check_insert` boolean — If true, this Attachment will be printed and mailed along with the check sent to your vendor. Only one Attachment per Payable may be included.
    - `delivery_method` 'ach_expedited' | 'ach_next_day' | 'ach_same_day' | 'ach_standard' | 'check_standard' | 'check_international' | 'check_next_day' | 'check_priority' | 'check_priority_express' | 'check_priority_signature' | 'check_standard_certified' | 'check_two_day' | 'international_ach' | 'international_swift' | 'international_vendor_choice' | 'paypal_direct' | 'real_time_payment', nullable, required — The payment delivery method option. Different selections here will incur [different fees](https://docs.routable.com/en/articles/4800434-understanding-routable-fees).
    - `delivery_network` 'ach' | 'fedex' | 'fednow' | 'local_rails' | 'paypal' | 'rtp' | 'swift' | 'usps', nullable — The network that delivered the payment to the receiving `Company`. For `check` `Payables`, this will be the mail carrier that delivered the check to the receiver. `Payables` with types `external` and `vendor_choice` will always return `null` for this value. For all other `Payables`, this will be the banking network or platform used to complete the transaction. | Value | Payable `type` | Description | | --------------| ----------------| ------------------------------------| | `ach` | `ach` | [ACH Network](https://www.nacha.org/)] | | `fedex` | `check` | [FedEx](https://fedex.com)] | | `fednow` | `ach` | [FedNow](https://explore.fednow.org) | | `local_rails` | `international` | The local rails available in the recipient's country were used. | | `paypal` | `paypal` | [PayPal](https://paypal.com) | [PayPal](https://paypal.com) | | `rtp` | `ach` | [RTP Network](https://www.theclearinghouse.org/payment-systems/rtp) | | `swift` | `international` | [Swift](https://www.swift.com) | | `usps` | `check` | [United States Postal Service](https://usps.com) |
    - `failure_detail` ItemsPayablesCommonPayableFailureDetail, nullable — If the `Payable` is in the status `issue` or `failed`, this object will describe the error that occurred to trigger the failure. This object will be `null` if there is no failure. See [Handling Failed Payments](https://developers.routable.com/docs/handling-failed-payments) for guidance on how to programmatically respond to failures.
      - `description` string — A human-readable description of the error that occurred.
      - `occurred_at` string, date-time — The timestamp when the failure occurred.
      - `type` 'compliance_failure' | 'funding_failure' | 'invalid_bank_account_currency' | 'invalid_bank_account_inactive' | 'invalid_company_name' | 'other_unknown' | 'rejected_refused' | 'technical_error' — The type of error that occurred. | Value | Description | | ----------- | -----------------------------------| | `compliance_failure` | The `Payable` was blocked due to AML, sanctions, policy, currency, or regulatory restrictions. | | `funding_failure` | Insufficient funds were available to fund the `Payable`. | | `invalid_bank_account_currency` | The currency for the `Company`'s `PaymentMethod` is invalid. | | `invalid_bank_account_inactive` | The `Company`'s `PaymentMethod` is invalid or inactive. | | `invalid_company_name` | The `Company`'s name is invalid or does not match the expected value. | | `other_unknown` | An unknown error occurred. | | `rejected_refused` | The `Payable` was rejected or refused by the `Company` or the `Company`'s bank. | | `technical_error` | A system, formatting, or request error occurred that prevented the `Payable` from being processed. |
    - `ledger` union — Fields specific to your accounting suite integration.
      - object
        - `memo` string — A message (or notes) about the transaction. Included on the invoice in **Xero** as a Note.
        - `tax_style` 'exclusive' | 'inclusive' | 'none' — Specifies how **Xero** calculates and records the tax on this transaction. See the [Xero documentation](https://developer.xero.com/documentation/api-guides/tax-in-xero#TaxInclusiveVsExclusive) for more details.
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
      - object
        - `memo` string — A message (or notes) about the transaction. Included in **QuickBooks Online** as a Private Note.
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
      - object
        - `account` LedgersNetsuiteNetSuiteAccount — An Account in your **NetSuite** chart of accounts (such as '1040 - Office Supplies') in which to track this Payable.[View the **NetSuite** documentation for Accounts for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/account.html).
          - `id` string, required — The ID of the Account associated with this Payable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounts](https://developers.routable.com/reference/list-accounting-software-objects).
        - `class` LedgersNetsuiteNetSuiteClass — The **NetSuite** Class (such as 'Furniture', 'Hardware', 'Accessories') to associate with this Payable, Receivable, or line item. [View the **NetSuite** documentation for Classes for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/classification.html).
          - `id` string, required — The ID of the Class associated with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/classes](https://developers.routable.com/reference/list-accounting-software-objects).
        - `location` LedgersNetsuiteNetSuiteLocation — The Location (such as 'San Francisco', 'Store #1234') to associate with this Payable, Receivable or line item. [View the **NetSuite** documentation for Locations for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/location.html).
          - `id` string, required — The location ID to associate with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/locations](https://developers.routable.com/reference/list-accounting-software-objects).
        - `memo` string — A message (or notes) about the transaction.
        - `posting_period` LedgersNetsuiteNetSuitePostingPeriod — The Posting Period (such as 'Fiscal Year 2002') to associate with this Payable or Receivable. [View the **NetSuite** documentation for Posting Periods for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/accountingperiod.html).
          - `id` string, required — The posting period ID to associate with this Payable or Receivable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounting_periods](https://developers.routable.com/reference/list-accounting-software-objects).
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
      - LedgersCommonLedgerCommonPayableMeta
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
    - `line_items` object
      - `object` 'List', required — The object’s type (`List`).
      - `results` ItemsPayablesCommonPayableLineItem[], required
        - `account` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an account ID to track this line item against your chart of accounts. Either `item` or `account` is required depending on the style of line item you are creating.
          - `id` string, required
        - `amount` string, decimal — The line item's total amount.
        - `description` string — The line item's description.
        - `is_taxable` boolean — When working with **QuickBooks Online**, specifies whether tax should be collected for this line item. To mark a line item as taxable, the `billable` field must be `billable`.
        - `item` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an item ID to track this line item against inventory items. Either `item` or `account` is required depending on the style of line item you are creating.
          - `id` string, required
        - `quantity` string, decimal — The line item's quantity.
        - `style` 'item' — The line item's style. When working without an accounting software integration, or when integrated with Xero, you must use `item`. To attach the line item to an account in your accounting software's chart of accounts, use `account`.
        - `tax` object — When working with **NetSuite** and **Xero**, you may supply a tax ID to specify the tax rate to apply to this line item.
          - `id` string, required
        - `unit_price` string, decimal — The line item's price per unit.
        - `object` 'LineItem', required — The object’s type (`LineItem`).
        - `id` string, uuid, nullable — The ID of the line item.
        - `ledger` union — Fields specific to your accounting software integration.
          - LedgersXeroXeroNewPayableLineItemMeta
          - LedgersQboQBONewPayableLineItemMeta
            - `billable` 'billable' | 'not-billable' — A billable expense is an expense you incur on your customer's behalf when you perform work for them.
            - `class` LedgersQboQBOClass — The class ID to associate this Payable, Receivable or line item with in **QuickBooks Online**. You must enable classes in **QuickBooks Online** to use this attribute.
              - …
            - `customer_ref` string — The reference number for the customer that you would like to track this line item against.
            - `department` LedgersQboQBODepartment — The department or location ID to associate this Payable, Receivable or line item with in **QuickBooks Online**.
              - …
            - `markup` string, decimal — Markup amount expressed as a percent of charges already entered in the current transaction. To enter a rate of 10% use "10.0", not "0.01".
          - LedgersNetsuiteNetSuiteNewPayableLineItemMeta
            - `amortiz_start_date` string, date — The amortization start date.
            - `amortization_end_date` string, date — The amortization end date.
            - `amortization_residual` string — The residual value (the estimated value at the end of its lease term or useful life).
            - `amortization_sched` LedgersNetsuiteNetSuiteAmortizationSchedule — The **NetSuite** Amortization Template to associate with this line item. [View the **NetSuite** documentation for Amortization Template for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/amortizationtemplate.html).
              - …
            - `class` LedgersNetsuiteNetSuiteClass — The **NetSuite** Class (such as 'Furniture', 'Hardware', 'Accessories') to associate with this Payable, Receivable, or line item. [View the **NetSuite** documentation for Classes for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/classification.html).
              - …
            - `customer_ref` string — The reference number for the customer that you would like to track this line item against.
            - `department` LedgersNetsuiteNetSuiteDepartment — The **NetSuite** department (such as 'Engineering', 'Sales') to associate with this line item. [View the **NetSuite** documentation for Departments for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/department.html).
              - …
            - `location` LedgersNetsuiteNetSuiteLocation — The Location (such as 'San Francisco', 'Store #1234') to associate with this Payable, Receivable or line item. [View the **NetSuite** documentation for Locations for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/location.html).
              - …
          - LedgersSageSageNewPayableLineItemMeta — Configuration for a line item which may be optional or required depending on your Sage configuration.
            - `account` LedgersSageSageAccount — An Account in your **Sage Intacct** chart of accounts (such as '1040 - Office Supplies') in which to track this line item.
              - …
            - `class` LedgersSageSageClass — A Class (also called a *Channel*) in your **Sage Intacct** chart of accounts (such as 'Furniture') in which to track this line item.
              - …
            - `contract` LedgersSageSageContract — A Contract in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `customer_ref` string — The reference number for the customer that you would like to track this line item against.
            - `department` LedgersSageSageDepartment — A Department in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `employee` LedgersSageSageEmployee — An Employee in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `item` LedgersSageSageItem — An Item in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `location` LedgersSageSageLocation — A Location in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `project` LedgersSageSageProject — A Project in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `task` LedgersSageSageTask — A Task in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `vendor_ref` string — The reference number for the vendor that you would like to track this line item against.
            - `warehouse` LedgersSageSageWarehouse — A Warehouse in your **Sage Intacct** implementation against which to track this line item.
              - …
        - `purchase_order_id` string — The ID of the purchase order in your linked accounting software.
        - `purchase_order_line_item_id` string — The ID of the line item in the purchase order referenced by `purchase_order_id`.
    - `pay_to_company` CompaniesCompactCompany, required
      - `object` 'Company', required — The object’s type (`Company`).
      - `id` string, uuid, required — The Company ID.
      - `display_name` string, required — The Company's name for display in the Routable Dashboard.
      - `links` CompaniesCompanyLinks, required — Related links.
        - `self` string, uri-reference, required — Link to this object.
        - `compliance_checks` string, uri-reference, required — Link to this Company's Compliance Reports.
        - `contacts` string, uri-reference, required — Link to this Company's Contacts.
        - `payables` string, uri-reference, required — Link to this Company's Payables.
        - `payment_methods` string, uri-reference, required — Link to this Company's Payment Methods.
        - `receivables` string, uri-reference, required — Link to this Company's Receivables.
        - `tax_forms` string, uri-reference, required — Link to this Company's most recent TaxForm.
    - `send_on` string, date, nullable, required — The date the payment is scheduled to be sent.
    - `withdraw_from_account` union
      - object
        - `object` 'Account', required — The object’s type (`Account`).
        - `id` string, uuid, required — The Account ID.
        - `links` AccountsAccountLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
        - `type` 'bank', required — The type of Account
        - `type_details` AccountsAccountBankTypeDetails, required
          - `account_number` string, required — The bank account number. In responses, all but the last four digits will be masked for security.
          - `account_type` 'checking' | 'savings', required — The type of bank account.
          - `institution_name` string, required — The bank's name.
          - `logo` string, uri — The URL of the bank's logo in PNG format.
          - `primary_color` string — The bank's primary color hex code.
          - `routing_number` string, required — The bank's nine-digit routing number.
      - object
        - `object` 'Account', required — The object’s type (`Account`).
        - `id` string, uuid, required — The Account ID.
        - `links` AccountsAccountLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
        - `type` 'balance', required — The type of Account
        - `type_details` object, required
      - object
        - `object` 'Account', required — The object’s type (`Account`).
        - `id` string, uuid, required — The Account ID.
        - `links` AccountsAccountLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
        - `type` 'paypal', required — The type of Account
        - `type_details` AccountsAccountPayPalTypeDetails, required
  - ItemsPayablesPaypalPayablePayPal
    - `object` 'Payable', required — The object’s type (`Payable`).
    - `delivery_method` 'paypal_direct', nullable, required — The payment delivery method option. Different selections here will incur [different fees](https://docs.routable.com/en/articles/4800434-understanding-routable-fees).
    - `pay_to_payment_method` object, nullable — The `PaymentMethod` that will receive the funds.
      - `object` 'PaymentMethod', required — The object’s type (`PaymentMethod`).
      - `id` string, uuid, required — The `PaymentMethod` ID.
      - `links` PaymentMethodsCommonPaymentMethodLinks, required — Related links.
        - `self` string, uri-reference, required — Link to this object.
        - `company` string, uri-reference, required — Link to this `PaymentMethod`'s `Company`.
      - `type` 'paypal', required — The type of Payment Method
      - `type_details` PaymentMethodsPaypalPaymentMethodPayPalTypeDetails, required
        - `email` string, email, required — The Company's PayPal email address.
    - `type` 'paypal', required — The `type` of `Payable`.
    - `type_details` ItemsPayablesPaypalPayablePayPalTypeDetails, required
    - `id` string, uuid, required — The resource ID.
    - `amount` string, decimal, required — The total amount for this payment.
    - `amount_due` string, decimal, required — The total amount remaining due for this payment.
    - `amount_recipient` number, double — The amount that will be sent to the vendor.
    - `amount_sender` number, double — The amount paid by the sender.
    - `amount_paid` string, decimal, required — The total amount paid for this payment.
    - `approved_at` string, date-time, nullable, required — The date the payment was approved.
    - `bill_number` string, nullable, required — The bill number for this item. If you have integrated your accounting software, this will match the bill number in that application.
    - `created_at` string, date-time — The creation date and time of the Item.
    - `currency_code` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `currency_code_recipient` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `currency_code_sender` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `due_on` string, date, required — The date the payment is due.
    - `exchange_rate` string — The exchange rate used to convert the amount_sender into the amount_recipient.
    - `expected_on` string, date, nullable, required — The date the payment is expected to hit the receiving account.
    - `external_id` string, nullable, required — An external ID that you have assigned to this transaction - for example, an invoice or payment number in your application.
    - `fixed_side` 'sender' | 'recipient' — Which amount associated with the payment is fixed and will be used to determine the other side's amount.
    - `issued_on` string, date, required — The date the invoice was issued.
    - `is_exchange_rate_locked` boolean — Designate whether or not the exchange_rate value is actually the one that will be used to perform the currency conversion (true) or if it is an estimate based on the current rate (false).
    - `reference` string, nullable — This field is used as an additional reference number for the item when Routable is **not** integrated with your accounting software. If you have integrated your accounting software with Routable, this field is not used.
    - `sent_on` string, date, nullable, required — The date the payment or invoice was sent to the receiving Company. If the Payable or Receivable is created after the [cut-off time](https://docs.routable.com/en/articles/5149655-bank-transfer-payment-delivery-options) for the chosen `delivery_method`, the `sent_on` date will reflect the date the transaction was actually sent, which may be the following business day after the requested `send_on` date.
    - `status` 'canceled' | 'completed' | 'compliance_hold' | 'created' | 'externally_paid' | 'failed' | 'initiated' | 'issue' | 'needs_approval' | 'new' | 'pending' | 'po_discrepancy_hold' | 'processing' | 'ready_to_send' | 'scheduled', required — The status of the payment: | Value | Description | | `canceled` | The payment was canceled. No funds were sent to the **receiver**. | | `completed` | The payment was completed. The **receiver** has received the funds at the specified `pay_to_payment_method`. | | `compliance_hold` | The payment has been held pending resolution of a **compliance hold.** See the `Company`'s `compliance_checks` for details. | | `created` | The payment is newly created. | | `externally_paid` | The payment is a record of a payment made outside of Routable. | `failed` | The payment failed at some point on its journey through the banking system. See `failure_detail` for details and resolutions. | | `initiated` | The transfer of funds has begun. This corresponds to the "In Transit" state in the Routable UI. | | `issue` | The payment failed at some point while Routable was creating it. See `failure_detail` for details and resolutions. | | `needs_approval` | The payment has been paused until it receives approval from all required approvers. | | `pending` | The payment is held pending the `pay_to_company`'s selection of a payment and/or `type` (`vendor_choice` `Payables`). | | `po_discrepancy_hold` | The payment has been held pending resolution of a purchase order discrepancy. | | `processing` | The payment is currently being processed in Routable. (**Note:** As payment are only in this status for a few seconds, `payable.status_changed` webhooks are **not fired** for it.) | | `ready_to_send` | The payment is waiting to be manually sent, either through the Routable Dashboard or an update to `send_on`. | | `scheduled` | The payment is scheduled to be sent on the future date referenced in `send_on`. |
    - `status_changed_at` string, date-time, required — The datetime of the last status change.
    - `status_changes` ItemsCommonStatusChangeItem[], required — The status timeline, sorted from oldest to newest.
      - `changed_at` string, date-time, required — The datetime associated with this status change.
      - `status` 'analyzing' | 'canceled' | 'completed' | 'compliance_hold' | 'created' | 'externally_paid' | 'failed' | 'import' | 'initiated' | 'issue' | 'needs_approval' | 'new' | 'ocr' | 'pending' | 'po_discrepancy_hold' | 'processing' | 'ready_to_send' | 'scheduled', required — The new status of the `Payable` as of the date/time indicated in `changed_at`. | Value | Description | | `analyzing` | Routable is processing payment data for a payment created via OCR in the Routable Dashboard. | | `canceled` | The payment was canceled. No funds were sent to the **receiver**. | | `completed` | The payment was completed. The **receiver** has received the funds at the specified `pay_to_payment_method`. | | `compliance_hold` | The payment has been held pending resolution of a **compliance hold.** See the `Company`'s `compliance_checks` for details. | | `created` | The payment is newly created. | | `externally_paid` | The payment is a record of a payment made outside of Routable. | `failed` | The payment failed at some point on its journey through the banking system. See `failure_detail` for details and resolutions. | | `initiated` | The transfer of funds has begun. This corresponds to the "In Transit" state in the Routable UI. | | `issue` | The payment failed at some point while Routable was creating it. See `failure_detail` for details and resolutions. | | `needs_approval` | The payment has been paused until it receives approval from all required approvers. | | `new` | The payment is newly created. | | `ocr` | Routable is processing payment data for a payment created via OCR in the Routable Dashboard. | | `pending` | The payment is held pending the `pay_to_company`'s selection of a payment and/or `type` (`vendor_choice` `Payables`). | | `po_discrepancy_hold` | The payment has been held pending resolution of a purchase order discrepancy. | | `processing` | The payment is currently being processed in Routable. (**Note:** As payment are only in this status for a few seconds, `payable.status_changed` webhooks are **not fired** for it.) | | `ready_to_send` | The payment is waiting to be manually sent, either through the Routable Dashboard or an update to `send_on`. | | `scheduled` | The payment is scheduled to be sent on the future date referenced in `send_on`. |
    - `links` ItemsCommonItemLinks, required — Related links.
      - `self` string, uri-reference, required — Link to this object.
      - `confirmation` string, nullable — Link to download payment confirmation document as a PDF.
    - `version` integer — The current version of the resource that is incremental per change, starting at 1 at the moment of creation.
    - `attachments` object, required — A list of file attachments to this resource.
      - `object` 'List', required — The object’s type (`List`).
      - `results` ItemsPayablesCommonPayableAttachment[], required
        - `object` 'Attachment', required
        - `id` string, uuid, required — The Attachment ID.
        - `name` string, required — The filename.
        - `mime_type` string, required — The file's MIME type.
        - `url` string, uri, required — A publicly accessibly URL that expires in 1 month.
        - `include_in_check_insert` boolean — If true, this Attachment will be printed and mailed along with the check sent to your vendor. Only one Attachment per Payable may be included.
    - `delivery_network` 'ach' | 'fedex' | 'fednow' | 'local_rails' | 'paypal' | 'rtp' | 'swift' | 'usps', nullable — The network that delivered the payment to the receiving `Company`. For `check` `Payables`, this will be the mail carrier that delivered the check to the receiver. `Payables` with types `external` and `vendor_choice` will always return `null` for this value. For all other `Payables`, this will be the banking network or platform used to complete the transaction. | Value | Payable `type` | Description | | --------------| ----------------| ------------------------------------| | `ach` | `ach` | [ACH Network](https://www.nacha.org/)] | | `fedex` | `check` | [FedEx](https://fedex.com)] | | `fednow` | `ach` | [FedNow](https://explore.fednow.org) | | `local_rails` | `international` | The local rails available in the recipient's country were used. | | `paypal` | `paypal` | [PayPal](https://paypal.com) | [PayPal](https://paypal.com) | | `rtp` | `ach` | [RTP Network](https://www.theclearinghouse.org/payment-systems/rtp) | | `swift` | `international` | [Swift](https://www.swift.com) | | `usps` | `check` | [United States Postal Service](https://usps.com) |
    - `failure_detail` ItemsPayablesCommonPayableFailureDetail, nullable — If the `Payable` is in the status `issue` or `failed`, this object will describe the error that occurred to trigger the failure. This object will be `null` if there is no failure. See [Handling Failed Payments](https://developers.routable.com/docs/handling-failed-payments) for guidance on how to programmatically respond to failures.
      - `description` string — A human-readable description of the error that occurred.
      - `occurred_at` string, date-time — The timestamp when the failure occurred.
      - `type` 'compliance_failure' | 'funding_failure' | 'invalid_bank_account_currency' | 'invalid_bank_account_inactive' | 'invalid_company_name' | 'other_unknown' | 'rejected_refused' | 'technical_error' — The type of error that occurred. | Value | Description | | ----------- | -----------------------------------| | `compliance_failure` | The `Payable` was blocked due to AML, sanctions, policy, currency, or regulatory restrictions. | | `funding_failure` | Insufficient funds were available to fund the `Payable`. | | `invalid_bank_account_currency` | The currency for the `Company`'s `PaymentMethod` is invalid. | | `invalid_bank_account_inactive` | The `Company`'s `PaymentMethod` is invalid or inactive. | | `invalid_company_name` | The `Company`'s name is invalid or does not match the expected value. | | `other_unknown` | An unknown error occurred. | | `rejected_refused` | The `Payable` was rejected or refused by the `Company` or the `Company`'s bank. | | `technical_error` | A system, formatting, or request error occurred that prevented the `Payable` from being processed. |
    - `ledger` union — Fields specific to your accounting suite integration.
      - object
        - `memo` string — A message (or notes) about the transaction. Included on the invoice in **Xero** as a Note.
        - `tax_style` 'exclusive' | 'inclusive' | 'none' — Specifies how **Xero** calculates and records the tax on this transaction. See the [Xero documentation](https://developer.xero.com/documentation/api-guides/tax-in-xero#TaxInclusiveVsExclusive) for more details.
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
      - object
        - `memo` string — A message (or notes) about the transaction. Included in **QuickBooks Online** as a Private Note.
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
      - object
        - `account` LedgersNetsuiteNetSuiteAccount — An Account in your **NetSuite** chart of accounts (such as '1040 - Office Supplies') in which to track this Payable.[View the **NetSuite** documentation for Accounts for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/account.html).
          - `id` string, required — The ID of the Account associated with this Payable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounts](https://developers.routable.com/reference/list-accounting-software-objects).
        - `class` LedgersNetsuiteNetSuiteClass — The **NetSuite** Class (such as 'Furniture', 'Hardware', 'Accessories') to associate with this Payable, Receivable, or line item. [View the **NetSuite** documentation for Classes for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/classification.html).
          - `id` string, required — The ID of the Class associated with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/classes](https://developers.routable.com/reference/list-accounting-software-objects).
        - `location` LedgersNetsuiteNetSuiteLocation — The Location (such as 'San Francisco', 'Store #1234') to associate with this Payable, Receivable or line item. [View the **NetSuite** documentation for Locations for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/location.html).
          - `id` string, required — The location ID to associate with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/locations](https://developers.routable.com/reference/list-accounting-software-objects).
        - `memo` string — A message (or notes) about the transaction.
        - `posting_period` LedgersNetsuiteNetSuitePostingPeriod — The Posting Period (such as 'Fiscal Year 2002') to associate with this Payable or Receivable. [View the **NetSuite** documentation for Posting Periods for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/accountingperiod.html).
          - `id` string, required — The posting period ID to associate with this Payable or Receivable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounting_periods](https://developers.routable.com/reference/list-accounting-software-objects).
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
      - LedgersCommonLedgerCommonPayableMeta
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
    - `line_items` object
      - `object` 'List', required — The object’s type (`List`).
      - `results` ItemsPayablesCommonPayableLineItem[], required
        - `account` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an account ID to track this line item against your chart of accounts. Either `item` or `account` is required depending on the style of line item you are creating.
          - `id` string, required
        - `amount` string, decimal — The line item's total amount.
        - `description` string — The line item's description.
        - `is_taxable` boolean — When working with **QuickBooks Online**, specifies whether tax should be collected for this line item. To mark a line item as taxable, the `billable` field must be `billable`.
        - `item` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an item ID to track this line item against inventory items. Either `item` or `account` is required depending on the style of line item you are creating.
          - `id` string, required
        - `quantity` string, decimal — The line item's quantity.
        - `style` 'item' — The line item's style. When working without an accounting software integration, or when integrated with Xero, you must use `item`. To attach the line item to an account in your accounting software's chart of accounts, use `account`.
        - `tax` object — When working with **NetSuite** and **Xero**, you may supply a tax ID to specify the tax rate to apply to this line item.
          - `id` string, required
        - `unit_price` string, decimal — The line item's price per unit.
        - `object` 'LineItem', required — The object’s type (`LineItem`).
        - `id` string, uuid, nullable — The ID of the line item.
        - `ledger` union — Fields specific to your accounting software integration.
          - LedgersXeroXeroNewPayableLineItemMeta
          - LedgersQboQBONewPayableLineItemMeta
            - `billable` 'billable' | 'not-billable' — A billable expense is an expense you incur on your customer's behalf when you perform work for them.
            - `class` LedgersQboQBOClass — The class ID to associate this Payable, Receivable or line item with in **QuickBooks Online**. You must enable classes in **QuickBooks Online** to use this attribute.
              - …
            - `customer_ref` string — The reference number for the customer that you would like to track this line item against.
            - `department` LedgersQboQBODepartment — The department or location ID to associate this Payable, Receivable or line item with in **QuickBooks Online**.
              - …
            - `markup` string, decimal — Markup amount expressed as a percent of charges already entered in the current transaction. To enter a rate of 10% use "10.0", not "0.01".
          - LedgersNetsuiteNetSuiteNewPayableLineItemMeta
            - `amortiz_start_date` string, date — The amortization start date.
            - `amortization_end_date` string, date — The amortization end date.
            - `amortization_residual` string — The residual value (the estimated value at the end of its lease term or useful life).
            - `amortization_sched` LedgersNetsuiteNetSuiteAmortizationSchedule — The **NetSuite** Amortization Template to associate with this line item. [View the **NetSuite** documentation for Amortization Template for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/amortizationtemplate.html).
              - …
            - `class` LedgersNetsuiteNetSuiteClass — The **NetSuite** Class (such as 'Furniture', 'Hardware', 'Accessories') to associate with this Payable, Receivable, or line item. [View the **NetSuite** documentation for Classes for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/classification.html).
              - …
            - `customer_ref` string — The reference number for the customer that you would like to track this line item against.
            - `department` LedgersNetsuiteNetSuiteDepartment — The **NetSuite** department (such as 'Engineering', 'Sales') to associate with this line item. [View the **NetSuite** documentation for Departments for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/department.html).
              - …
            - `location` LedgersNetsuiteNetSuiteLocation — The Location (such as 'San Francisco', 'Store #1234') to associate with this Payable, Receivable or line item. [View the **NetSuite** documentation for Locations for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/location.html).
              - …
          - LedgersSageSageNewPayableLineItemMeta — Configuration for a line item which may be optional or required depending on your Sage configuration.
            - `account` LedgersSageSageAccount — An Account in your **Sage Intacct** chart of accounts (such as '1040 - Office Supplies') in which to track this line item.
              - …
            - `class` LedgersSageSageClass — A Class (also called a *Channel*) in your **Sage Intacct** chart of accounts (such as 'Furniture') in which to track this line item.
              - …
            - `contract` LedgersSageSageContract — A Contract in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `customer_ref` string — The reference number for the customer that you would like to track this line item against.
            - `department` LedgersSageSageDepartment — A Department in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `employee` LedgersSageSageEmployee — An Employee in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `item` LedgersSageSageItem — An Item in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `location` LedgersSageSageLocation — A Location in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `project` LedgersSageSageProject — A Project in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `task` LedgersSageSageTask — A Task in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `vendor_ref` string — The reference number for the vendor that you would like to track this line item against.
            - `warehouse` LedgersSageSageWarehouse — A Warehouse in your **Sage Intacct** implementation against which to track this line item.
              - …
        - `purchase_order_id` string — The ID of the purchase order in your linked accounting software.
        - `purchase_order_line_item_id` string — The ID of the line item in the purchase order referenced by `purchase_order_id`.
    - `pay_to_company` CompaniesCompactCompany, required
      - `object` 'Company', required — The object’s type (`Company`).
      - `id` string, uuid, required — The Company ID.
      - `display_name` string, required — The Company's name for display in the Routable Dashboard.
      - `links` CompaniesCompanyLinks, required — Related links.
        - `self` string, uri-reference, required — Link to this object.
        - `compliance_checks` string, uri-reference, required — Link to this Company's Compliance Reports.
        - `contacts` string, uri-reference, required — Link to this Company's Contacts.
        - `payables` string, uri-reference, required — Link to this Company's Payables.
        - `payment_methods` string, uri-reference, required — Link to this Company's Payment Methods.
        - `receivables` string, uri-reference, required — Link to this Company's Receivables.
        - `tax_forms` string, uri-reference, required — Link to this Company's most recent TaxForm.
    - `send_on` string, date, nullable, required — The date the payment is scheduled to be sent.
    - `withdraw_from_account` union
      - object
        - `object` 'Account', required — The object’s type (`Account`).
        - `id` string, uuid, required — The Account ID.
        - `links` AccountsAccountLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
        - `type` 'bank', required — The type of Account
        - `type_details` AccountsAccountBankTypeDetails, required
          - `account_number` string, required — The bank account number. In responses, all but the last four digits will be masked for security.
          - `account_type` 'checking' | 'savings', required — The type of bank account.
          - `institution_name` string, required — The bank's name.
          - `logo` string, uri — The URL of the bank's logo in PNG format.
          - `primary_color` string — The bank's primary color hex code.
          - `routing_number` string, required — The bank's nine-digit routing number.
      - object
        - `object` 'Account', required — The object’s type (`Account`).
        - `id` string, uuid, required — The Account ID.
        - `links` AccountsAccountLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
        - `type` 'balance', required — The type of Account
        - `type_details` object, required
      - object
        - `object` 'Account', required — The object’s type (`Account`).
        - `id` string, uuid, required — The Account ID.
        - `links` AccountsAccountLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
        - `type` 'paypal', required — The type of Account
        - `type_details` AccountsAccountPayPalTypeDetails, required
  - ItemsPayablesVendorChoicePayableVendorChoice
    - `object` 'Payable', required — The object’s type (`Payable`).
    - `type` 'vendor_choice', required — The `type` of `Payable`.
    - `type_details` ItemsPayablesVendorChoicePayableVendorChoiceTypeDetails, required
      - `delivery_method_choices` string[] — Allow your vendor to choose different payment methods and enter their payment information. Defaults to `["ach", "check"]`.
    - `id` string, uuid, required — The resource ID.
    - `amount` string, decimal, required — The total amount for this payment.
    - `amount_due` string, decimal, required — The total amount remaining due for this payment.
    - `amount_recipient` number, double — The amount that will be sent to the vendor.
    - `amount_sender` number, double — The amount paid by the sender.
    - `amount_paid` string, decimal, required — The total amount paid for this payment.
    - `approved_at` string, date-time, nullable, required — The date the payment was approved.
    - `bill_number` string, nullable, required — The bill number for this item. If you have integrated your accounting software, this will match the bill number in that application.
    - `created_at` string, date-time — The creation date and time of the Item.
    - `currency_code` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `currency_code_recipient` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `currency_code_sender` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
    - `due_on` string, date, required — The date the payment is due.
    - `exchange_rate` string — The exchange rate used to convert the amount_sender into the amount_recipient.
    - `expected_on` string, date, nullable, required — The date the payment is expected to hit the receiving account.
    - `external_id` string, nullable, required — An external ID that you have assigned to this transaction - for example, an invoice or payment number in your application.
    - `fixed_side` 'sender' | 'recipient' — Which amount associated with the payment is fixed and will be used to determine the other side's amount.
    - `issued_on` string, date, required — The date the invoice was issued.
    - `is_exchange_rate_locked` boolean — Designate whether or not the exchange_rate value is actually the one that will be used to perform the currency conversion (true) or if it is an estimate based on the current rate (false).
    - `reference` string, nullable — This field is used as an additional reference number for the item when Routable is **not** integrated with your accounting software. If you have integrated your accounting software with Routable, this field is not used.
    - `sent_on` string, date, nullable, required — The date the payment or invoice was sent to the receiving Company. If the Payable or Receivable is created after the [cut-off time](https://docs.routable.com/en/articles/5149655-bank-transfer-payment-delivery-options) for the chosen `delivery_method`, the `sent_on` date will reflect the date the transaction was actually sent, which may be the following business day after the requested `send_on` date.
    - `status` 'canceled' | 'completed' | 'compliance_hold' | 'created' | 'externally_paid' | 'failed' | 'initiated' | 'issue' | 'needs_approval' | 'new' | 'pending' | 'po_discrepancy_hold' | 'processing' | 'ready_to_send' | 'scheduled', required — The status of the payment: | Value | Description | | `canceled` | The payment was canceled. No funds were sent to the **receiver**. | | `completed` | The payment was completed. The **receiver** has received the funds at the specified `pay_to_payment_method`. | | `compliance_hold` | The payment has been held pending resolution of a **compliance hold.** See the `Company`'s `compliance_checks` for details. | | `created` | The payment is newly created. | | `externally_paid` | The payment is a record of a payment made outside of Routable. | `failed` | The payment failed at some point on its journey through the banking system. See `failure_detail` for details and resolutions. | | `initiated` | The transfer of funds has begun. This corresponds to the "In Transit" state in the Routable UI. | | `issue` | The payment failed at some point while Routable was creating it. See `failure_detail` for details and resolutions. | | `needs_approval` | The payment has been paused until it receives approval from all required approvers. | | `pending` | The payment is held pending the `pay_to_company`'s selection of a payment and/or `type` (`vendor_choice` `Payables`). | | `po_discrepancy_hold` | The payment has been held pending resolution of a purchase order discrepancy. | | `processing` | The payment is currently being processed in Routable. (**Note:** As payment are only in this status for a few seconds, `payable.status_changed` webhooks are **not fired** for it.) | | `ready_to_send` | The payment is waiting to be manually sent, either through the Routable Dashboard or an update to `send_on`. | | `scheduled` | The payment is scheduled to be sent on the future date referenced in `send_on`. |
    - `status_changed_at` string, date-time, required — The datetime of the last status change.
    - `status_changes` ItemsCommonStatusChangeItem[], required — The status timeline, sorted from oldest to newest.
      - `changed_at` string, date-time, required — The datetime associated with this status change.
      - `status` 'analyzing' | 'canceled' | 'completed' | 'compliance_hold' | 'created' | 'externally_paid' | 'failed' | 'import' | 'initiated' | 'issue' | 'needs_approval' | 'new' | 'ocr' | 'pending' | 'po_discrepancy_hold' | 'processing' | 'ready_to_send' | 'scheduled', required — The new status of the `Payable` as of the date/time indicated in `changed_at`. | Value | Description | | `analyzing` | Routable is processing payment data for a payment created via OCR in the Routable Dashboard. | | `canceled` | The payment was canceled. No funds were sent to the **receiver**. | | `completed` | The payment was completed. The **receiver** has received the funds at the specified `pay_to_payment_method`. | | `compliance_hold` | The payment has been held pending resolution of a **compliance hold.** See the `Company`'s `compliance_checks` for details. | | `created` | The payment is newly created. | | `externally_paid` | The payment is a record of a payment made outside of Routable. | `failed` | The payment failed at some point on its journey through the banking system. See `failure_detail` for details and resolutions. | | `initiated` | The transfer of funds has begun. This corresponds to the "In Transit" state in the Routable UI. | | `issue` | The payment failed at some point while Routable was creating it. See `failure_detail` for details and resolutions. | | `needs_approval` | The payment has been paused until it receives approval from all required approvers. | | `new` | The payment is newly created. | | `ocr` | Routable is processing payment data for a payment created via OCR in the Routable Dashboard. | | `pending` | The payment is held pending the `pay_to_company`'s selection of a payment and/or `type` (`vendor_choice` `Payables`). | | `po_discrepancy_hold` | The payment has been held pending resolution of a purchase order discrepancy. | | `processing` | The payment is currently being processed in Routable. (**Note:** As payment are only in this status for a few seconds, `payable.status_changed` webhooks are **not fired** for it.) | | `ready_to_send` | The payment is waiting to be manually sent, either through the Routable Dashboard or an update to `send_on`. | | `scheduled` | The payment is scheduled to be sent on the future date referenced in `send_on`. |
    - `links` ItemsCommonItemLinks, required — Related links.
      - `self` string, uri-reference, required — Link to this object.
      - `confirmation` string, nullable — Link to download payment confirmation document as a PDF.
    - `version` integer — The current version of the resource that is incremental per change, starting at 1 at the moment of creation.
    - `attachments` object, required — A list of file attachments to this resource.
      - `object` 'List', required — The object’s type (`List`).
      - `results` ItemsPayablesCommonPayableAttachment[], required
        - `object` 'Attachment', required
        - `id` string, uuid, required — The Attachment ID.
        - `name` string, required — The filename.
        - `mime_type` string, required — The file's MIME type.
        - `url` string, uri, required — A publicly accessibly URL that expires in 1 month.
        - `include_in_check_insert` boolean — If true, this Attachment will be printed and mailed along with the check sent to your vendor. Only one Attachment per Payable may be included.
    - `delivery_method` 'ach_expedited' | 'ach_next_day' | 'ach_same_day' | 'ach_standard' | 'check_standard' | 'check_international' | 'check_next_day' | 'check_priority' | 'check_priority_express' | 'check_priority_signature' | 'check_standard_certified' | 'check_two_day' | 'international_ach' | 'international_swift' | 'international_vendor_choice' | 'paypal_direct' | 'real_time_payment', nullable, required — The payment delivery method option. Different selections here will incur [different fees](https://docs.routable.com/en/articles/4800434-understanding-routable-fees).
    - `delivery_network` 'ach' | 'fedex' | 'fednow' | 'local_rails' | 'paypal' | 'rtp' | 'swift' | 'usps', nullable — The network that delivered the payment to the receiving `Company`. For `check` `Payables`, this will be the mail carrier that delivered the check to the receiver. `Payables` with types `external` and `vendor_choice` will always return `null` for this value. For all other `Payables`, this will be the banking network or platform used to complete the transaction. | Value | Payable `type` | Description | | --------------| ----------------| ------------------------------------| | `ach` | `ach` | [ACH Network](https://www.nacha.org/)] | | `fedex` | `check` | [FedEx](https://fedex.com)] | | `fednow` | `ach` | [FedNow](https://explore.fednow.org) | | `local_rails` | `international` | The local rails available in the recipient's country were used. | | `paypal` | `paypal` | [PayPal](https://paypal.com) | [PayPal](https://paypal.com) | | `rtp` | `ach` | [RTP Network](https://www.theclearinghouse.org/payment-systems/rtp) | | `swift` | `international` | [Swift](https://www.swift.com) | | `usps` | `check` | [United States Postal Service](https://usps.com) |
    - `failure_detail` ItemsPayablesCommonPayableFailureDetail, nullable — If the `Payable` is in the status `issue` or `failed`, this object will describe the error that occurred to trigger the failure. This object will be `null` if there is no failure. See [Handling Failed Payments](https://developers.routable.com/docs/handling-failed-payments) for guidance on how to programmatically respond to failures.
      - `description` string — A human-readable description of the error that occurred.
      - `occurred_at` string, date-time — The timestamp when the failure occurred.
      - `type` 'compliance_failure' | 'funding_failure' | 'invalid_bank_account_currency' | 'invalid_bank_account_inactive' | 'invalid_company_name' | 'other_unknown' | 'rejected_refused' | 'technical_error' — The type of error that occurred. | Value | Description | | ----------- | -----------------------------------| | `compliance_failure` | The `Payable` was blocked due to AML, sanctions, policy, currency, or regulatory restrictions. | | `funding_failure` | Insufficient funds were available to fund the `Payable`. | | `invalid_bank_account_currency` | The currency for the `Company`'s `PaymentMethod` is invalid. | | `invalid_bank_account_inactive` | The `Company`'s `PaymentMethod` is invalid or inactive. | | `invalid_company_name` | The `Company`'s name is invalid or does not match the expected value. | | `other_unknown` | An unknown error occurred. | | `rejected_refused` | The `Payable` was rejected or refused by the `Company` or the `Company`'s bank. | | `technical_error` | A system, formatting, or request error occurred that prevented the `Payable` from being processed. |
    - `ledger` union — Fields specific to your accounting suite integration.
      - object
        - `memo` string — A message (or notes) about the transaction. Included on the invoice in **Xero** as a Note.
        - `tax_style` 'exclusive' | 'inclusive' | 'none' — Specifies how **Xero** calculates and records the tax on this transaction. See the [Xero documentation](https://developer.xero.com/documentation/api-guides/tax-in-xero#TaxInclusiveVsExclusive) for more details.
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
      - object
        - `memo` string — A message (or notes) about the transaction. Included in **QuickBooks Online** as a Private Note.
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
      - object
        - `account` LedgersNetsuiteNetSuiteAccount — An Account in your **NetSuite** chart of accounts (such as '1040 - Office Supplies') in which to track this Payable.[View the **NetSuite** documentation for Accounts for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/account.html).
          - `id` string, required — The ID of the Account associated with this Payable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounts](https://developers.routable.com/reference/list-accounting-software-objects).
        - `class` LedgersNetsuiteNetSuiteClass — The **NetSuite** Class (such as 'Furniture', 'Hardware', 'Accessories') to associate with this Payable, Receivable, or line item. [View the **NetSuite** documentation for Classes for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/classification.html).
          - `id` string, required — The ID of the Class associated with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/classes](https://developers.routable.com/reference/list-accounting-software-objects).
        - `location` LedgersNetsuiteNetSuiteLocation — The Location (such as 'San Francisco', 'Store #1234') to associate with this Payable, Receivable or line item. [View the **NetSuite** documentation for Locations for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/location.html).
          - `id` string, required — The location ID to associate with this Payable, Receivable or line item. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/locations](https://developers.routable.com/reference/list-accounting-software-objects).
        - `memo` string — A message (or notes) about the transaction.
        - `posting_period` LedgersNetsuiteNetSuitePostingPeriod — The Posting Period (such as 'Fiscal Year 2002') to associate with this Payable or Receivable. [View the **NetSuite** documentation for Posting Periods for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/accountingperiod.html).
          - `id` string, required — The posting period ID to associate with this Payable or Receivable. Find these IDs on the Routable Dashboard under Accounting Software Objects or by calling [/v1/accounting-software/objects/accounting_periods](https://developers.routable.com/reference/list-accounting-software-objects).
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
      - LedgersCommonLedgerCommonPayableMeta
        - `id` string, nullable — The Payable's unique ID in your accounting software.
        - `status` 'canceled' | 'deleted' | 'draft' | 'error' | 'needs_approval' | 'needs_import' | 'no_ledger' | 'not_synced' | 'paid' | 'pending' — The status of the Payable in your accounting software.
    - `line_items` object
      - `object` 'List', required — The object’s type (`List`).
      - `results` ItemsPayablesCommonPayableLineItem[], required
        - `account` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an account ID to track this line item against your chart of accounts. Either `item` or `account` is required depending on the style of line item you are creating.
          - `id` string, required
        - `amount` string, decimal — The line item's total amount.
        - `description` string — The line item's description.
        - `is_taxable` boolean — When working with **QuickBooks Online**, specifies whether tax should be collected for this line item. To mark a line item as taxable, the `billable` field must be `billable`.
        - `item` object — When working with **NetSuite**, **QuickBooks Online**, and **Xero**, you may supply an item ID to track this line item against inventory items. Either `item` or `account` is required depending on the style of line item you are creating.
          - `id` string, required
        - `quantity` string, decimal — The line item's quantity.
        - `style` 'item' — The line item's style. When working without an accounting software integration, or when integrated with Xero, you must use `item`. To attach the line item to an account in your accounting software's chart of accounts, use `account`.
        - `tax` object — When working with **NetSuite** and **Xero**, you may supply a tax ID to specify the tax rate to apply to this line item.
          - `id` string, required
        - `unit_price` string, decimal — The line item's price per unit.
        - `object` 'LineItem', required — The object’s type (`LineItem`).
        - `id` string, uuid, nullable — The ID of the line item.
        - `ledger` union — Fields specific to your accounting software integration.
          - LedgersXeroXeroNewPayableLineItemMeta
          - LedgersQboQBONewPayableLineItemMeta
            - `billable` 'billable' | 'not-billable' — A billable expense is an expense you incur on your customer's behalf when you perform work for them.
            - `class` LedgersQboQBOClass — The class ID to associate this Payable, Receivable or line item with in **QuickBooks Online**. You must enable classes in **QuickBooks Online** to use this attribute.
              - …
            - `customer_ref` string — The reference number for the customer that you would like to track this line item against.
            - `department` LedgersQboQBODepartment — The department or location ID to associate this Payable, Receivable or line item with in **QuickBooks Online**.
              - …
            - `markup` string, decimal — Markup amount expressed as a percent of charges already entered in the current transaction. To enter a rate of 10% use "10.0", not "0.01".
          - LedgersNetsuiteNetSuiteNewPayableLineItemMeta
            - `amortiz_start_date` string, date — The amortization start date.
            - `amortization_end_date` string, date — The amortization end date.
            - `amortization_residual` string — The residual value (the estimated value at the end of its lease term or useful life).
            - `amortization_sched` LedgersNetsuiteNetSuiteAmortizationSchedule — The **NetSuite** Amortization Template to associate with this line item. [View the **NetSuite** documentation for Amortization Template for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/amortizationtemplate.html).
              - …
            - `class` LedgersNetsuiteNetSuiteClass — The **NetSuite** Class (such as 'Furniture', 'Hardware', 'Accessories') to associate with this Payable, Receivable, or line item. [View the **NetSuite** documentation for Classes for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/classification.html).
              - …
            - `customer_ref` string — The reference number for the customer that you would like to track this line item against.
            - `department` LedgersNetsuiteNetSuiteDepartment — The **NetSuite** department (such as 'Engineering', 'Sales') to associate with this line item. [View the **NetSuite** documentation for Departments for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/department.html).
              - …
            - `location` LedgersNetsuiteNetSuiteLocation — The Location (such as 'San Francisco', 'Store #1234') to associate with this Payable, Receivable or line item. [View the **NetSuite** documentation for Locations for details](https://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2020_2/script/record/location.html).
              - …
          - LedgersSageSageNewPayableLineItemMeta — Configuration for a line item which may be optional or required depending on your Sage configuration.
            - `account` LedgersSageSageAccount — An Account in your **Sage Intacct** chart of accounts (such as '1040 - Office Supplies') in which to track this line item.
              - …
            - `class` LedgersSageSageClass — A Class (also called a *Channel*) in your **Sage Intacct** chart of accounts (such as 'Furniture') in which to track this line item.
              - …
            - `contract` LedgersSageSageContract — A Contract in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `customer_ref` string — The reference number for the customer that you would like to track this line item against.
            - `department` LedgersSageSageDepartment — A Department in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `employee` LedgersSageSageEmployee — An Employee in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `item` LedgersSageSageItem — An Item in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `location` LedgersSageSageLocation — A Location in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `project` LedgersSageSageProject — A Project in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `task` LedgersSageSageTask — A Task in your **Sage Intacct** implementation against which to track this line item.
              - …
            - `vendor_ref` string — The reference number for the vendor that you would like to track this line item against.
            - `warehouse` LedgersSageSageWarehouse — A Warehouse in your **Sage Intacct** implementation against which to track this line item.
              - …
        - `purchase_order_id` string — The ID of the purchase order in your linked accounting software.
        - `purchase_order_line_item_id` string — The ID of the line item in the purchase order referenced by `purchase_order_id`.
    - `pay_to_company` CompaniesCompactCompany, required
      - `object` 'Company', required — The object’s type (`Company`).
      - `id` string, uuid, required — The Company ID.
      - `display_name` string, required — The Company's name for display in the Routable Dashboard.
      - `links` CompaniesCompanyLinks, required — Related links.
        - `self` string, uri-reference, required — Link to this object.
        - `compliance_checks` string, uri-reference, required — Link to this Company's Compliance Reports.
        - `contacts` string, uri-reference, required — Link to this Company's Contacts.
        - `payables` string, uri-reference, required — Link to this Company's Payables.
        - `payment_methods` string, uri-reference, required — Link to this Company's Payment Methods.
        - `receivables` string, uri-reference, required — Link to this Company's Receivables.
        - `tax_forms` string, uri-reference, required — Link to this Company's most recent TaxForm.
    - `pay_to_payment_method` union — The `PaymentMethod` that will receive the funds.
      - PaymentMethodsAddressCompactPaymentMethodAddress
        - `object` 'PaymentMethod', required — The object’s type (`PaymentMethod`).
        - `id` string, uuid, required — The `PaymentMethod` ID.
        - `links` PaymentMethodsCommonPaymentMethodLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
          - `company` string, uri-reference, required — Link to this `PaymentMethod`'s `Company`.
        - `type` 'address', required — The type of payment method
        - `type_details` PaymentMethodsAddressPaymentMethodAddressTypeDetails, required
          - `address_line_1` string, required — The address' first line.
          - `address_line_2` string, nullable — The address' second line.
          - `city` string, required — The address' city.
          - `country` 'AD' | 'AE' | 'AF' | 'AG' | 'AI' | 'AL' | 'AM' | 'AO' | 'AR' | 'AS' | 'AT' | 'AU' | 'AW' | 'AX' | 'AZ' | 'BA' | 'BB' | 'BD' | 'BE' | 'BF' | 'BG' | 'BH' | 'BI' | 'BJ' | 'BL' | 'BM' | 'BN' | 'BO' | 'BQ' | 'BR' | 'BS' | 'BT' | 'BW' | 'BZ' | 'CA' | 'CC' | 'CD' | 'CF' | 'CG' | 'CH' | 'CI' | 'CL' | 'CM' | 'CN' | 'CO' | 'CR' | 'CV' | 'CX' | 'CY' | 'CZ' | 'DE' | 'DJ' | 'DK' | 'DM' | 'DO' | 'DZ' | 'EC' | 'EE' | 'EG' | 'EH' | 'ER' | 'ES' | 'ET' | 'FI' | 'FJ' | 'FK' | 'FM' | 'FO' | 'FR' | 'GA' | 'GB' | 'GD' | 'GE' | 'GF' | 'GG' | 'GH' | 'GI' | 'GL' | 'GM' | 'GN' | 'GP' | 'GQ' | 'GR' | 'GT' | 'GU' | 'GW' | 'GY' | 'HK' | 'HM' | 'HN' | 'HR' | 'HT' | 'HU' | 'ID' | 'IE' | 'IL' | 'IM' | 'IN' | 'IQ' | 'IS' | 'IT' | 'JE' | 'JM' | 'JO' | 'JP' | 'KE' | 'KG' | 'KH' | 'KI' | 'KM' | 'KN' | 'KR' | 'KW' | 'KY' | 'KZ' | 'LA' | 'LB' | 'LC' | 'LI' | 'LK' | 'LR' | 'LS' | 'LT' | 'LU' | 'LV' | 'MA' | 'MC' | 'MD' | 'ME' | 'MF' | 'MG' | 'MH' | 'MK' | 'ML' | 'MN' | 'MO' | 'MP' | 'MQ' | 'MR' | 'MS' | 'MT' | 'MU' | 'MV' | 'MX' | 'MW' | 'MY' | 'MZ' | 'NA' | 'NC' | 'NE' | 'NF' | 'NG' | 'NI' | 'NL' | 'NO' | 'NP' | 'NR' | 'NU' | 'NZ' | 'OM' | 'PA' | 'PE' | 'PF' | 'PG' | 'PH' | 'PK' | 'PL' | 'PM' | 'PN' | 'PR' | 'PT' | 'PW' | 'PY' | 'QA' | 'RE' | 'RO' | 'RS' | 'RW' | 'SA' | 'SB' | 'SC' | 'SE' | 'SG' | 'SH' | 'SI' | 'SJ' | 'SK' | 'SL' | 'SM' | 'SN' | 'SO' | 'SR' | 'ST' | 'SV' | 'SX' | 'SZ' | 'TC' | 'TD' | 'TF' | 'TG' | 'TH' | 'TJ' | 'TK' | 'TL' | 'TM' | 'TN' | 'TO' | 'TR' | 'TT' | 'TV' | 'TW' | 'TZ' | 'UA' | 'UG' | 'UM' | 'US' | 'UY' | 'UZ' | 'VA' | 'VC' | 'VI' | 'VN' | 'VU' | 'XK' | 'WF' | 'WS' | 'XX' | 'YE' | 'YT' | 'ZA' | 'ZM' | 'ZW', required — Country code in ISO 3166-1 Alpha-2 format.
          - `postal_code` string, required — The address' postal code.
          - `state` string, required — The address' state, province or territory.
          - `attention_line` string — If provided, this will be added as a 'to the attention line of' line printed on the envelope the check is mailed in.
          - `print_business_name` string, nullable — The business name to print on the check as the payee. If `recipient` is omitted, this will also be printed as the recipient on the envelope when the check is mailed.
          - `print_name` string, nullable — The payee name to print on the check. If `print_business_name` is omitted, this will also be printed as the recipient on the envelope when the check is mailed.
          - `recipient` string, nullable — The recipient that will be printed on the envelope when the check is mailed. If omitted, `print_business_name` will be used.
      - PaymentMethodsBankCompactPaymentMethodBank
        - `object` 'PaymentMethod', required — The object’s type (`PaymentMethod`).
        - `id` string, uuid, required — The `PaymentMethod` ID.
        - `links` PaymentMethodsCommonPaymentMethodLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
          - `company` string, uri-reference, required — Link to this `PaymentMethod`'s `Company`.
        - `type` 'bank', required — The type of Payment Method
        - `type_details` PaymentMethodsBankPaymentMethodBankTypeDetails, required
          - `account_number` string, required — The bank account number. In responses, all but the last four digits will be masked for security.
          - `account_type` 'checking' | 'savings', required — The type of bank account.
          - `currency_code` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
          - `institution_name` string, required — The bank's name.
          - `logo` string, uri — The URL of the bank's logo in PNG format.
          - `primary_color` string — The bank's primary color hex code.
          - `routing_number` string — The bank's routing number.
      - PaymentMethodsInternationalCompactPaymentMethodInternational
        - `object` 'PaymentMethod', required — The object’s type (`PaymentMethod`).
        - `id` string, uuid, required — The `PaymentMethod` ID.
        - `links` PaymentMethodsCommonPaymentMethodLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
          - `company` string, uri-reference, required — Link to this `PaymentMethod`'s `Company`.
        - `type` 'international', required — The type of Payment Method
        - `type_details` PaymentMethodsInternationalPaymentMethodInternationalTypeDetails, required
          - `account_number` string, nullable — Bank account number. In responses, all but the last four digits will be masked for security.
          - `bank_code` string, nullable — Bank or institution number.
          - `beneficiary_details` object, nullable — Extra beneficiary data.
          - `bic_swift` string, nullable — SWIFT business code.
          - `branch_code` string, nullable — Branch number.
          - `bsb_code` string, nullable — Bank State Branch code.
          - `clabe` string, nullable — A CLABE (Clave Bancaria Estandarizada | Standardized Bank Code) is necessary for sending payments to vendors in Mexico.
          - `cnaps` string, nullable — A CNAPS (China National Advanced Payment System) code is necessary for sending payments via Chinese Yuan (CNY) to vendors in China.
          - `country_code` 'AD' | 'AE' | 'AF' | 'AG' | 'AI' | 'AL' | 'AM' | 'AO' | 'AR' | 'AS' | 'AT' | 'AU' | 'AW' | 'AX' | 'AZ' | 'BA' | 'BB' | 'BD' | 'BE' | 'BF' | 'BG' | 'BH' | 'BI' | 'BJ' | 'BL' | 'BM' | 'BN' | 'BO' | 'BQ' | 'BR' | 'BS' | 'BT' | 'BW' | 'BZ' | 'CA' | 'CC' | 'CD' | 'CF' | 'CG' | 'CH' | 'CI' | 'CL' | 'CM' | 'CN' | 'CO' | 'CR' | 'CV' | 'CX' | 'CY' | 'CZ' | 'DE' | 'DJ' | 'DK' | 'DM' | 'DO' | 'DZ' | 'EC' | 'EE' | 'EG' | 'EH' | 'ER' | 'ES' | 'ET' | 'FI' | 'FJ' | 'FK' | 'FM' | 'FO' | 'FR' | 'GA' | 'GB' | 'GD' | 'GE' | 'GF' | 'GG' | 'GH' | 'GI' | 'GL' | 'GM' | 'GN' | 'GP' | 'GQ' | 'GR' | 'GT' | 'GU' | 'GW' | 'GY' | 'HK' | 'HM' | 'HN' | 'HR' | 'HT' | 'HU' | 'ID' | 'IE' | 'IL' | 'IM' | 'IN' | 'IQ' | 'IS' | 'IT' | 'JE' | 'JM' | 'JO' | 'JP' | 'KE' | 'KG' | 'KH' | 'KI' | 'KM' | 'KN' | 'KR' | 'KW' | 'KY' | 'KZ' | 'LA' | 'LB' | 'LC' | 'LI' | 'LK' | 'LR' | 'LS' | 'LT' | 'LU' | 'LV' | 'MA' | 'MC' | 'MD' | 'ME' | 'MF' | 'MG' | 'MH' | 'MK' | 'ML' | 'MN' | 'MO' | 'MP' | 'MQ' | 'MR' | 'MS' | 'MT' | 'MU' | 'MV' | 'MX' | 'MW' | 'MY' | 'MZ' | 'NA' | 'NC' | 'NE' | 'NF' | 'NG' | 'NI' | 'NL' | 'NO' | 'NP' | 'NR' | 'NU' | 'NZ' | 'OM' | 'PA' | 'PE' | 'PF' | 'PG' | 'PH' | 'PK' | 'PL' | 'PM' | 'PN' | 'PR' | 'PT' | 'PW' | 'PY' | 'QA' | 'RE' | 'RO' | 'RS' | 'RW' | 'SA' | 'SB' | 'SC' | 'SE' | 'SG' | 'SH' | 'SI' | 'SJ' | 'SK' | 'SL' | 'SM' | 'SN' | 'SO' | 'SR' | 'ST' | 'SV' | 'SX' | 'SZ' | 'TC' | 'TD' | 'TF' | 'TG' | 'TH' | 'TJ' | 'TK' | 'TL' | 'TM' | 'TN' | 'TO' | 'TR' | 'TT' | 'TV' | 'TW' | 'TZ' | 'UA' | 'UG' | 'UM' | 'US' | 'UY' | 'UZ' | 'VA' | 'VC' | 'VI' | 'VN' | 'VU' | 'XK' | 'WF' | 'WS' | 'XX' | 'YE' | 'YT' | 'ZA' | 'ZM' | 'ZW' — Country code in ISO 3166-1 Alpha-2 format.
          - `currency_code` 'AED' | 'AUD' | 'BHD' | 'BRL' | 'BSD' | 'CAD' | 'CHF' | 'CNY' | 'COP' | 'CRC' | 'CZK' | 'DKK' | 'DOP' | 'EGP' | 'EUR' | 'GBP' | 'GTQ' | 'HKD' | 'HNL' | 'HUF' | 'IDR' | 'INR' | 'ILS' | 'JPY' | 'KES' | 'KRW' | 'KWD' | 'KZT' | 'MXN' | 'MYR' | 'NGN' | 'NIO' | 'NOK' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PHP' | 'PKR' | 'PLN' | 'QAR' | 'RON' | 'SAR' | 'SEK' | 'SGD' | 'THB' | 'TRY' | 'TWD' | 'UGX' | 'USD' | 'UYU' | 'VND' | 'ZAR' — An ISO 4217 currency code. Only currencies currently supported by Routable are available.
          - `iban` string, nullable — International Bank Account Number.
          - `ifsc` string, nullable — An IFSC (Indian Financial System Code) code is necessary for sending payments via Indian Rupees (INR) to vendors in India.
          - `institution_name` string, nullable — Bank name.
          - `payment_types` 'all' | 'priority' | 'regular' — Legacy SWIFT payment types supported. This field is `deprecated` and will be ignored if submitted.
          - `recipient_address` SharedAddress
            - `address_line_1` string, required — The address' first line.
            - `address_line_2` string, nullable — The address' second line.
            - `city` string, required — The address' city.
            - `country` 'AD' | 'AE' | 'AF' | 'AG' | 'AI' | 'AL' | 'AM' | 'AO' | 'AR' | 'AS' | 'AT' | 'AU' | 'AW' | 'AX' | 'AZ' | 'BA' | 'BB' | 'BD' | 'BE' | 'BF' | 'BG' | 'BH' | 'BI' | 'BJ' | 'BL' | 'BM' | 'BN' | 'BO' | 'BQ' | 'BR' | 'BS' | 'BT' | 'BW' | 'BZ' | 'CA' | 'CC' | 'CD' | 'CF' | 'CG' | 'CH' | 'CI' | 'CL' | 'CM' | 'CN' | 'CO' | 'CR' | 'CV' | 'CX' | 'CY' | 'CZ' | 'DE' | 'DJ' | 'DK' | 'DM' | 'DO' | 'DZ' | 'EC' | 'EE' | 'EG' | 'EH' | 'ER' | 'ES' | 'ET' | 'FI' | 'FJ' | 'FK' | 'FM' | 'FO' | 'FR' | 'GA' | 'GB' | 'GD' | 'GE' | 'GF' | 'GG' | 'GH' | 'GI' | 'GL' | 'GM' | 'GN' | 'GP' | 'GQ' | 'GR' | 'GT' | 'GU' | 'GW' | 'GY' | 'HK' | 'HM' | 'HN' | 'HR' | 'HT' | 'HU' | 'ID' | 'IE' | 'IL' | 'IM' | 'IN' | 'IQ' | 'IS' | 'IT' | 'JE' | 'JM' | 'JO' | 'JP' | 'KE' | 'KG' | 'KH' | 'KI' | 'KM' | 'KN' | 'KR' | 'KW' | 'KY' | 'KZ' | 'LA' | 'LB' | 'LC' | 'LI' | 'LK' | 'LR' | 'LS' | 'LT' | 'LU' | 'LV' | 'MA' | 'MC' | 'MD' | 'ME' | 'MF' | 'MG' | 'MH' | 'MK' | 'ML' | 'MN' | 'MO' | 'MP' | 'MQ' | 'MR' | 'MS' | 'MT' | 'MU' | 'MV' | 'MX' | 'MW' | 'MY' | 'MZ' | 'NA' | 'NC' | 'NE' | 'NF' | 'NG' | 'NI' | 'NL' | 'NO' | 'NP' | 'NR' | 'NU' | 'NZ' | 'OM' | 'PA' | 'PE' | 'PF' | 'PG' | 'PH' | 'PK' | 'PL' | 'PM' | 'PN' | 'PR' | 'PT' | 'PW' | 'PY' | 'QA' | 'RE' | 'RO' | 'RS' | 'RW' | 'SA' | 'SB' | 'SC' | 'SE' | 'SG' | 'SH' | 'SI' | 'SJ' | 'SK' | 'SL' | 'SM' | 'SN' | 'SO' | 'SR' | 'ST' | 'SV' | 'SX' | 'SZ' | 'TC' | 'TD' | 'TF' | 'TG' | 'TH' | 'TJ' | 'TK' | 'TL' | 'TM' | 'TN' | 'TO' | 'TR' | 'TT' | 'TV' | 'TW' | 'TZ' | 'UA' | 'UG' | 'UM' | 'US' | 'UY' | 'UZ' | 'VA' | 'VC' | 'VI' | 'VN' | 'VU' | 'XK' | 'WF' | 'WS' | 'XX' | 'YE' | 'YT' | 'ZA' | 'ZM' | 'ZW', required — Country code in ISO 3166-1 Alpha-2 format.
            - `postal_code` string, required — The address' postal code.
            - `state` string — The address' state, province or territory.
          - `sort_code` string, nullable — Bank and branch code used in the British banking industry.
      - PaymentMethodsPaypalCompactPaymentMethodPayPal
        - `object` 'PaymentMethod', required — The object’s type (`PaymentMethod`).
        - `id` string, uuid, required — The `PaymentMethod` ID.
        - `links` PaymentMethodsCommonPaymentMethodLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
          - `company` string, uri-reference, required — Link to this `PaymentMethod`'s `Company`.
        - `type` 'paypal', required — The type of Payment Method
        - `type_details` PaymentMethodsPaypalPaymentMethodPayPalTypeDetails, required
          - `email` string, email, required — The Company's PayPal email address.
    - `send_on` string, date, nullable, required — The date the payment is scheduled to be sent.
    - `withdraw_from_account` union
      - object
        - `object` 'Account', required — The object’s type (`Account`).
        - `id` string, uuid, required — The Account ID.
        - `links` AccountsAccountLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
        - `type` 'bank', required — The type of Account
        - `type_details` AccountsAccountBankTypeDetails, required
          - `account_number` string, required — The bank account number. In responses, all but the last four digits will be masked for security.
          - `account_type` 'checking' | 'savings', required — The type of bank account.
          - `institution_name` string, required — The bank's name.
          - `logo` string, uri — The URL of the bank's logo in PNG format.
          - `primary_color` string — The bank's primary color hex code.
          - `routing_number` string, required — The bank's nine-digit routing number.
      - object
        - `object` 'Account', required — The object’s type (`Account`).
        - `id` string, uuid, required — The Account ID.
        - `links` AccountsAccountLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
        - `type` 'balance', required — The type of Account
        - `type_details` object, required
      - object
        - `object` 'Account', required — The object’s type (`Account`).
        - `id` string, uuid, required — The Account ID.
        - `links` AccountsAccountLinks, required — Related links.
          - `self` string, uri-reference, required — Link to this object.
        - `type` 'paypal', required — The type of Account
        - `type_details` AccountsAccountPayPalTypeDetails, required

## Other responses

- `400` — Bad Request
- `409` — Conflict

---

[API](https://skmtc.net/routable/apis/routable-api.md) · [All operations](https://skmtc.net/routable/apis/routable-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/routable/routable-api/versions/9f17a8bc982a/schema)
