---
title: "How does LUSID handle rounding conventions?"
slug: "how-does-lusid-handle-rounding-conventions"
updated: 2026-07-01T10:22:03Z
published: 2026-07-01T10:22:03Z
canonical: "support.lusid.com/how-does-lusid-handle-rounding-conventions"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://support.lusid.com/llms.txt
> Use this file to discover all available pages before exploring further.

# How does LUSID handle rounding conventions?

You can configure LUSID to round accrued interest and/or cashflows to a specific number of decimal places for the following instruments:

- [Bond](/v1/docs/modelling-fixed-rate-vanilla-bonds-in-lusid)
- [ComplexBond](/v1/docs/modelling-complex-bonds-in-lusid)
- [InflationLinkedBond](/v1/docs/modelling-inflation-linked-bonds-in-lusid)

By default, no rounding is applied at the instrument level. You have the option to apply the standard [ISO 4217 currency rounding convention](/v1/docs/recipes-changing-default-recipe-options#aggregation-options) in a recipe.

Consider the following example of a fixed-rate vanilla bond mastered as an instrument of type `Bond`:

```json
curl -X POST 'https://mydomain.lusid.com/api/api/instruments'
   -H 'Content-Type: application/json-patch+json'
   -H 'Authorization: Bearer myAPIAccessToken'
   -d '{"upsert-request-1": {
    "name": "UKT 0 ⅜ 10/22/26",
    "identifiers": {"Figi": {"value": "BBG00ZF1T9P5"}},
    "definition": {
      "instrumentType": "Bond",
      "startDate": "2016-10-22T10:00:00.0000000+00:00",
      "maturityDate": "2026-10-22T10:00:00.0000000+00:00",
      "domCcy": "GBP",
      "couponRate": 0.00375,
      "principal": 1
      "flowConventions": {
        "currency": "GBP",
        "paymentFrequency": "12M",
        "dayCountConvention": "Actual365",
        "rollConvention": "22",
        "businessDayConvention": "Following"
      },
      "roundingConventions": [
        {
          "roundingTarget": "AccruedInterest",
          "faceValue": 100,
          "precision": 10,
          "roundingType": "Up"
        },
        {
          "roundingTarget": "Cashflows",
          "faceValue": 100,
          "precision": 6,
          "roundingType": "Down"
        },
      ]
    }
  }
}'
```

Note the following:

- The instrument definition has a `roundingConventions` array with two [RoundingConvention](https://www.lusid.com/docs/api/lusid/schemas/RoundingConvention/) objects.
- The first has a `roundingTarget` of `AccruedInterest`, which impacts the `Instrument/Accrued` [metric](/v1/docs/what-is-a-metric) available when calling the [GetValuation](https://www.lusid.com/docs/api/lusid/endpoints/aggregation/GetValuation/) API, and rounds up to 10 decimal places.
- The second has a `roundingTarget` of `Cashflows`, which impacts the [GetCashLadder](https://www.lusid.com/docs/api/lusid/endpoints/transaction-portfolios/GetPortfolioCashLadder/) API, and rounds down to 6 decimal places.
- Both have a `faceValue` of the par value specified in the bond prospectus.

> **Note:** To define a universal rounding convention, specify a single `RoundingConvention` object with a `roundingTarget` of `All`.

LUSID applies a rounding convention as follows:

1. Calculates the unitised accrued interest or cashflow amount.
2. Multiplies by the face value.
3. Applies the rounding convention.
4. Inverts the rounded scaled accrued interest or cashflow amount.
5. Multiplies by the number of units in the holding.
6. Applies the ISO 4217 currency rounding convention in a recipe, if applicable.
