# List available landed cost charges

Operation ID: `getAvailableCharges`

Group: Inventory › Landed Costs

[Open in the interactive reference](https://docs.api.lensing.ai/lensing/v1/endpoints/getAvailableCharges)

`GET /inventory/landed-costs/vendor-bill-lines`

Read-only: Reads and returns; changes nothing.

Lists the vendor bill lines of a legal entity that you can add to a landed cost as charges. A line is included when:

- its vendor bill is approved
- the line's item or general ledger account matches an active landed cost item
- its currency can be converted to the legal entity's functional currency on the bill date

To set up landed cost items, use POST inventory/landed-cost-items. If the list is empty, check that landed cost items are set up. Without them, no line is included, even when there are approved vendor bills.

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `Api-Version` | header | string · v1 | yes | The API version this request targets, named by its public identifier. Required on every request; omitting it, or naming a version this company does not have, is answered with 400. This document describes version `v1`. |
| `entityId` | query | string | yes | The unique identifier of the legal entity whose vendor bill lines you want. Format: UUID. See `id` on GET base/entities (entities). |
| `excludeFullyAllocated` | query | boolean | no | Whether to leave out vendor bill lines with nothing left to use, because committed landed costs have already used their whole amount. Defaults to true. |

## Response

`200` Success

Under `data` (getAvailableChargesOutput):

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `charges` | array<object> | yes | The vendor bill lines you can add to a landed cost, newest bill date first. An empty array when there are none. Example: `[{"id":"9c47e1b8-2a63-4d05-b7f9-04e28d5a1c37","vendorBillId":"e0b41f76-38c9-4d52-9a1e-7c5b02d6a834","vendorBillNumber":"VB-8842","description":"Sea freight, Shanghai to Felixstowe","poNumber":"PO-4471","billStatus":"approved","billDate":"2026-08-10","vendorName":"Meridian Logistics","entityId":"7039b992-696a-40c7-a181-51759304ef83","itemId":"3d81e07c-95a2-4f63-b1c8-27e5a94d0b36","itemCode":"SVC-FREIGHT","itemName":"Inbound freight","allocationMode":"Quantity","lineTotal":"300","allocatedAmount":"60","currency":"GBP","functionalLineTotal":"300","functionalAllocatedAmount":"60","functionalCurrency":"GBP"}]`. |
| `charges[].id` | string | yes | The unique identifier of the vendor bill line. Format: UUID. Send it as `chargeId` when you create or update a landed cost. |
| `charges[].vendorBillId` | string | no | The unique identifier of the vendor bill the line belongs to. Format: UUID. See `id` on GET accounting/vendor-bills/:id (getVendorBill). |
| `charges[].vendorBillNumber` | string | no | The vendor bill's number. |
| `charges[].description` | string | no | The description of the vendor bill line, for example 'Sea freight, Shanghai to Felixstowe'. |
| `charges[].poNumber` | string | no | The number of the purchase order the vendor bill line is matched to. Absent when the line is not matched to a purchase order. |
| `charges[].billStatus` | string | no | The status of the vendor bill. It is always 'approved'. |
| `charges[].billDate` | date | no | The date of the vendor bill. Format: YYYY-MM-DD. When the bill is in another `currency`, `functionalLineTotal` is converted to the legal entity's functional currency at the exchange rate on this date. |
| `charges[].dueDate` | date | no | The due date of the vendor bill. Format: YYYY-MM-DD. |
| `charges[].vendorName` | string | no | The name of the vendor on the vendor bill. |
| `charges[].entityId` | string | no | The unique identifier of the legal entity the vendor bill belongs to. Format: UUID. See `id` on GET base/entities (entities). |
| `charges[].itemId` | string | no | The unique identifier of the item on the vendor bill line. Format: UUID. Absent when the line has no item. See `id` on GET inventory/items/:id (getItem). |
| `charges[].itemCode` | string | no | The code of the item in `itemId`. |
| `charges[].itemName` | string | no | The name of the item in `itemId`. When the vendor bill line has no item, the line's description is used. |
| `charges[].allocationMode` | string | no | The allocation mode of the landed cost item that the vendor bill line matches. To use it, send it as the charge's `allocationMode` when you create or update a landed cost. When the line's item matches one landed cost item and the line's general ledger account matches another, the mode of the item match is used. Possible values: 'Equal', 'Quantity', 'LineTotal', 'Weight', 'Volume'. |
| `charges[].lineTotal` | decimal | no | The line's total, in the vendor bill's currency. |
| `charges[].allocatedAmount` | decimal | no | The amount of the line's total that committed landed costs have already used (allocated), in the vendor bill's currency. |
| `charges[].currency` | string | no | The currency of the vendor bill. Format: ISO 4217, for example 'GBP'. It can differ from `functionalCurrency`. |
| `charges[].functionalLineTotal` | decimal | no | The total of the vendor bill line in the functional currency of the legal entity, converted at the exchange rate on `billDate`. |
| `charges[].functionalAllocatedAmount` | decimal | no | The amount of the line's total that committed landed costs have already used (allocated), in the functional currency of the legal entity. |
| `charges[].functionalCurrency` | string | no | The functional currency of the legal entity. Format: ISO 4217, for example 'GBP'. |

```json
{
  "data": {
    "charges": [
      {
        "id": "9c47e1b8-2a63-4d05-b7f9-04e28d5a1c37",
        "vendorBillId": "e0b41f76-38c9-4d52-9a1e-7c5b02d6a834",
        "vendorBillNumber": "VB-8842",
        "description": "Sea freight, Shanghai to Felixstowe",
        "poNumber": "PO-4471",
        "billStatus": "approved",
        "billDate": "2026-08-10",
        "vendorName": "Meridian Logistics",
        "entityId": "7039b992-696a-40c7-a181-51759304ef83",
        "itemId": "3d81e07c-95a2-4f63-b1c8-27e5a94d0b36",
        "itemCode": "SVC-FREIGHT",
        "itemName": "Inbound freight",
        "allocationMode": "Quantity",
        "lineTotal": "300",
        "allocatedAmount": "60",
        "currency": "GBP",
        "functionalLineTotal": "300",
        "functionalAllocatedAmount": "60",
        "functionalCurrency": "GBP"
      }
    ]
  },
  "diagnostics": [
    {
      "code": "<code>",
      "message": "<message>",
      "severity": "error",
      "path": [
        "<path>"
      ],
      "details": "<details>"
    }
  ]
}
```

## Errors

| Code | Status |
| --- | --- |
| `ENTITY_NOT_FOUND` | 400 |

## Statuses

- `400` — Invalid request or business failure. Codes: ENTITY_NOT_FOUND
- `401` — The request carries no valid access token.
- `403` — Not authorized
- `404` — Not found
- `429` — Too many requests from this client address. The response has no body and no `Retry-After` header.
- `500` — Internal server error
