HomeGuidesRecipesAPI ExplorerForumSupport
Partner Portal
Partner Portal

Manage line items

Learn how to manage the items described in a payable.

Overview

Line item refers to any service or product added to a payable, along with their descriptions, quantities, rates, and prices. Every payable contains descriptions of all items purchased.

By default, the subtotal and total fields of line items are automatically calculated based on the unit_price, quantity, and tax fields, therefore, are read-only and appear only in the response schema.

This feature can be disabled in the partner's settings by calling PATCH /settings passing the field enable_line_items as false (the default value is true). Once enable_line_items is disabled, the fields amount, subtotal, tax, and tax_amount of the payable object become editable during its creation and update, as they will no longer be calculated/re-calculated based on line items.

Add line items to a payable

To add line items to a payable, send a POST request to the /payables/{payable_id}/line_items endpoint:

curl -X POST 'https://api.sandbox.monite.com/v1/payables/{payable_id}/line_items' \
     -H 'X-Monite-Version: 2024-01-31' \
     -H 'X-Monite-Entity-Id: ENTITY_ID' \
     -H 'Authorization: Bearer YOUR_PARTNER_TOKEN' \
     -d '{
        "name": "Ice cream",
        "description": "A delicious vanilla ice cream",
        "quantity": 1,
        "unit": "unit",
        "unit_price": 1200,
        "tax": 1250,
        "ledger_account_id": "7df884fd-8be8-4eba-b6ff-417b66efe033",
        "accounting_tax_rate_id": "dd13735f-ef3a-4312-8c37-835d70341375"
      }'

The successful response contains information about the created line item:

{
  "name": "Ice cream",
  "description": "A delicious vanilla ice cream",
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "quantity": 1,
  "unit": "unit",
  "unit_price": 1200,
  "total": 1350,
  "tax": 12500,
  "tax_amount": 150,
  "subtotal": 1200,
  "ledger_account_id": "7df884fd-8be8-4eba-b6ff-417b66efe033",
  "was_created_by_user_id": "ea837e28-509b-4b6a-a600-d54b6aa0b1f5",
  "accounting_tax_rate_id": "dd13735f-ef3a-4312-8c37-835d70341375",
  "payable_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}

List all line items of a payable

To list all line items of a specific payable, send a GET request to the /payables/{payable_id}/line_items endpoint:

curl GET 'https://api.sandbox.monite.com/v1/payables/{payable_id}/line_items' \
     -H 'X-Monite-Version: 2024-01-31' \
     -H 'X-Monite-Entity-Id: ENTITY_ID' \
     -H 'Authorization: Bearer YOUR_PARTNER_TOKEN' 
  

You will get a list of all line items present in the informed payable:

{
  "data": [
    {
      "name": "Ice cream",
      "description": "A delicious vanilla ice cream",
      "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "quantity": 1,
      "unit": "unit",
      "unit_price": 1200,
      "total": 1350,
      "tax": 1250,
      "tax_amount": 150,
      "subtotal": 1200,
      "ledger_account_id": "7df884fd-8be8-4eba-b6ff-417b66efe033",
      "was_created_by_user_id": "ea837e28-509b-4b6a-a600-d54b6aa0b1f5",
      "accounting_tax_rate_id": "dd13735f-ef3a-4312-8c37-835d70341375",
      "payable_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
    },
    {
      "name": "Cake",
      "description": "A chocolate cake",
      "id": "12188fc1-493d-48a7-aea8-382240dd7ce7",
      "quantity": 1,
      "unit": "unit",
      "unit_price": 1200,
      "total": 1350,
      "tax": 1250,
      "tax_amount": 150,
      "subtotal": 1200,
      "ledger_account_id": "7df884fd-8be8-4eba-b6ff-417b66efe033",
      "was_created_by_user_id": "ea837e28-509b-4b6a-a600-d54b6aa0b1f5",
      "accounting_tax_rate_id": "dd13735f-ef3a-4312-8c37-835d70341375",
      "payable_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
    }
  ],
  "prev_pagination_token": null,
  "next_pagination_token": null
}

Retrieve a line item

To retrieve information from a specific line item in a payable, send a GET request to the /payables/{payable_id}/line_items/{line_item_id} endpoint:

curl -X GET 'https://api.sandbox.monite.com/v1/payables/{payable_id}/line_items/{line_item_id}' \
     -H 'X-Monite-Version: 2024-01-31' \
     -H 'X-Monite-Entity-Id: ENTITY_ID' \
     -H 'Authorization: Bearer YOUR_PARTNER_TOKEN' 

Update a line item

To update a specific line item in a payable, send a PATCH request to the /payables/{payable_id}/line_items/{line_item_id} endpoint:

curl -X PATCH 'https://api.sandbox.monite.com/v1/payables/{payable_id}/line_items/{line_item_id}' \
     -H 'X-Monite-Version: 2024-01-31' \
     -H 'X-Monite-Entity-Id: ENTITY_ID' \
     -H 'Authorization: Bearer YOUR_PARTNER_TOKEN' \
     -d '{"name": "Double ice cream"}'

Remove a line item

To remove the line item from the payable, send a DELETE request to the /payables/{payable_id}/line_items/{line_item_id} endpoint:

curl -X DELETE 'https://api.sandbox.monite.com/v1/payables/{payable_id}/line_items/{line_item_id}`' \
     -H 'X-Monite-Version: 2024-01-31' \
     -H 'X-Monite-Entity-Id: ENTITY_ID' \
     -H 'Authorization: Bearer YOUR_PARTNER_TOKEN'