---
title: "Transactions and manual vs automatic calculation of amounts"
slug: "transactions-and-manual-vs-automatic-calculation-of-amounts"
updated: 2026-03-18T16:53:18Z
published: 2026-03-18T16:53:18Z
canonical: "support.lusid.com/transactions-and-manual-vs-automatic-calculation-of-amounts"
---

> ## 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.

# Transactions and manual vs automatic calculation of amounts

When you [book a trade](/v1/docs/how-do-i-create-or-update-a-transaction), you can manually set various numeric data points yourself, or ask LUSID to calculate them for you:

- While you are not *required* to capture all these data points, certain LUSID downstream features may rely on them, in particular [instrument events](/v1/docs/understanding-instrument-lifecycle-events-emitted-by-lusid).
- If you manually set (for example) a total consideration *and* ask LUSID to calculate it for you, your manual amount prevails.

In addition, LUSID automatically calculates certain amounts that you cannot override. The full list is as follows:

| Amount | Supported instruments | Represents… | [Currency](/v1/docs/transactions-and-exchange-rates) | Calculation mechanism | Can user set or override? | Can be automated using [transaction type calculation](/v1/docs/what-is-a-transaction-type-calculation)? | Reported on [output transaction](/v1/docs/input-and-output-transactions)? | Can be used in [side](/v1/docs/what-is-a-side#units-amount) to impact holdings? | Explanation of calculated amount |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Gross trade amount | All | Amount before fees | Transaction | Automatic | ❌ | ❌ | `grossTransactionAmount` field | `Txn:GrossTradeAmount` | - If instrument is a currency, amount is the number of transaction units. - If notional amount is set or calculated, amount is `0`. - If gross consideration is NOT set or calculated, amount is the same as the [gross consideration calculation per instrument type](/v1/docs/what-is-a-transaction-type-calculation#txngrossconsideration-calculation). - Otherwise, amount is: (Gross consideration / Exchange rate) - Accrued interest Note LUSID aligns the sign with that of the units traded, which may mean it differs from the gross consideration. |
| Trade amount | All | Amount after fees | Transaction | Automatic | ❌ | ❌ | `transactionAmount` field | `Txn:TradeAmount` | Amount is the same as gross trade amount if: - The instrument is a currency. - Notional amount is set or calculated - Total consideration is NOT set or calculated. Otherwise, the amount is: (Total consideration / Exchange rate) - Accrued interest Note LUSID aligns the sign with that of the units traded, which may mean it differs from the total consideration. |
| Gross consideration | All | Amount including accrued interest but before fees | Settlement | Manual or automatic | ✅ | [Txn:GrossConsideration](/v1/docs/what-is-a-transaction-type-calculation#txngrossconsideration-calculation) | `Transaction/default/GrossConsideration` system property | `Txn:GrossConsideration` | [See this article](/v1/docs/what-is-a-transaction-type-calculation#txngrossconsideration-calculation) |
| Gross consideration in trade currency | All | Amount including accrued interest but before fees | Transaction | Automatic | ❌ | ❌ | ❌ | ❌ | Gross consideration / Exchange rate |
| Total consideration | All | Amount including accrued interest and after fees | Settlement | Manual or automatic | ✅ | [DeriveTotalConsideration](/v1/docs/what-is-a-transaction-type-calculation#derivetotalconsideration-calculation) | `totalConsideration.amount` field | `Txn:TotalConsideration` | [See this article](/v1/docs/what-is-a-transaction-type-calculation#derivetotalconsideration-calculation) |
| Total consideration in trade currency | All | Amount including accrued interest and after fees | Transaction | Automatic | ❌ | ❌ | ❌ | `Txn:TotalConsiderationInTradeCurrency` | Total consideration / Exchange rate |
| Bond interest | `Bond`, `ComplexBond`, `InflationLinkedBond`, `CdsIndex`, `CreditDefaultSwap` | Accrued interest bought or sold | Transaction | Manual or automatic | ✅ | [Txn:BondInterest](/v1/docs/what-is-a-transaction-type-calculation#txnbondinterest-calculation) | `Transaction/default/BondInterest` system property | `Txn:BondInterest` | [See this article](/v1/docs/what-is-a-transaction-type-calculation#txnbondinterest-calculation) |
| Notional | `Future`, `ContractForDifference` | Notional value | Transaction | Manual or automatic | ✅ | [Txn:NotionalAmount](/v1/docs/what-is-a-transaction-type-calculation#txnnotionalamount-calculation) | `Transaction/default/NotionalAmount` system property | `Txn:NotionalAmount` | [See this article](/v1/docs/what-is-a-transaction-type-calculation#txnnotionalamount-calculation) |
| Current face | MBS (asset-backed `ComplexBond`) | Outstanding notional value | Transaction | Manual or automatic | ✅ | ❌ | `Transaction/default/CurrentFace` system property | `Txn:CurrentFace` | *Coming soon* |

## Example: Comparing manual vs automatic for a bond purchase

Consider the following example of a bond purchase transaction:

- Number of units purchased: 100000
- Price: 100
- Trade commission: £50
- Bond interest bought: £452.06

The input transactions for the two methods are quite different:

| Manual specification of amounts | Automatic calculation by LUSID |
| --- | --- |
| You calculate `totalConsideration.amount` yourself, and record all the data points using a combination of system and custom properties: ```json james { "transactionRequest-1": { "transactionId": "Txn-001", "type": "Buy", "instrumentIdentifiers": {"Instrument/default/Figi": "BBG000ABC123"}, "transactionDate": "2024-06-15T00:00:00.0000000+00:00", "settlementDate": "2024-06-18T00:00:00.0000000+00:00", "units": 100000, "transactionPrice": {"price": 100, "type": "CleanPrice"}, "totalConsideration": {"amount": 100502.06, "currency": "GBP"}, "properties": { "Transaction/default/GrossConsideration": { "key": "Transaction/default/GrossConsideration", "value": { "metricValue": { "value": 100452.06, "unit": "GBP" } } }, "Transaction/MyProperties/TotalCapitalisedFees": { "key": "Transaction/MyProperties/TotalCapitalisedFees", "value": { "metricValue": { "value": 50, "unit": "GBP" } } }, "Transaction/default/BondInterest": { "key": "Transaction/default/BondInterest", "value": { "metricValue": { "value": 452.06, "unit": "GBP" } } } } } } ``` | You set `totalConsideration.amount` to `0`, and only need record the trade commission using a custom property: ```json { "transactionRequest-1": { "transactionId": "Txn-001", "type": "Buy", "instrumentIdentifiers": {"Instrument/default/Figi": "BBG000ABC123"}, "transactionDate": "2024-06-15T00:00:00.0000000+00:00", "settlementDate": "2024-06-18T00:00:00.0000000+00:00", "units": 100000, "transactionPrice": {"price": 100, "type": "CleanPrice"}, "totalConsideration": {"amount": 0, "currency": "GBP"}, "properties": { "Transaction/MyProperties/TotalCapitalisedFees": { "key": "Transaction/MyProperties/TotalCapitalisedFees", "value": { "metricValue": { "value": 50, "unit": "GBP" } } } } } } ``` |

The `Buy` transaction type can have any economic impact you like, but might be defined as follows:

| `Buy` transaction type for manual specification | `Buy` transaction type for automatic calculation |
| --- | --- |
| ```json { "aliases": [ { "type": "Buy", "description": "Transaction type for purchases", "transactionClass": "Basic", "transactionRoles": "AllRoles", "isDefault": false } ], "movements": [ { "name": "Increase units", "movementTypes": "StockMovement", "side": "Side1", "direction": 1 }, { "name": "Decrease cash", "movementTypes": "CashCommitment", "side": "Side2", "direction": -1 } ] } ``` | ```json { "aliases": [ { "type": "Buy", "description": "Transaction type for purchases", "transactionClass": "Basic", "transactionRoles": "AllRoles", "isDefault": false } ], "movements": [ { "name": "Increase units", "movementTypes": "StockMovement", "side": "Side1", "direction": 1 }, { "name": "Decrease cash", "movementTypes": "CashCommitment", "side": "Side2", "direction": -1 } ], "calculations": [ { "type": "Txn:BondInterest" }, { "type": "Txn:GrossConsideration" }, { "type": "DeriveTotalConsideration", "formula": "Txn:GrossConsideration + Properties[Transaction/MyProperties/TotalCapitalisedFees]" } ] } ``` |

Note that LUSID generates the same [output transaction](/v1/docs/input-and-output-transactions) in both circumstances, so the impact on holdings is identical:

```json
{
      "transactionId": "Txn001",
      "type": "Buy",
      "instrumentIdentifiers": {
        "Instrument/default/LusidInstrumentId": "LUID_00003E75",
        "Instrument/default/Figi": "BBG000ABC123"
      },
      "instrumentScope": "default",
      "instrumentUid": "LUID_00003E75",
      "transactionDate": "2024-06-15T00:00:00.0000000+00:00",
      "settlementDate": "2024-06-18T00:00:00.0000000+00:00",
      "units": 100000,
      "transactionAmount": 100050,
      "transactionPrice": {
        "price": 100,
        "type": "CleanPrice"
      },
      "totalConsideration": {
        "amount": 100502.06,
        "currency": "USD"
      },
      "exchangeRate": 1,
      "transactionToPortfolioRate": 1,
      "transactionCurrency": "USD",
      "properties": {
        "Transaction/Fees/TotalCapitalisedFees": {
          "key": "Transaction/Fees/TotalCapitalisedFees",
          "value": {
            "metricValue": {
              "value": 50
            }
          }
        },
        "Transaction/default/GrossConsideration": {
          "key": "Transaction/default/GrossConsideration",
          "value": {
            "metricValue": {
              "value": 100452.06
            }
          }
        },
        "Transaction/default/BondInterest": {
          "key": "Transaction/default/BondInterest",
          "value": {
            "metricValue": {
              "value": 452.06
            }
          }
        },
        "Transaction/default/ResultantHolding": {
          "key": "Transaction/default/ResultantHolding",
          "value": {
            "metricValue": {
              "value": 100000
            }
          }
        }
      },
      "transactionStatus": "Active",
      "realisedGainLoss": [],
      "sourceType": "InputTransaction",
      "resolvedTransactionTypeDetails": {
        "scope": "default",
        "source": "default",
        "type": "Buy"
      }
}
```
