What built-in transaction types and sides are provided with LUSID?

Prev Next

LUSID has a number of built-in transaction types and sides that model basic economic behavior.

These are useful to get started, but we recommend creating your own universe of custom transaction types for a production system. See how to remove the built-in types.

Note: Built-in transaction types and sides are domiciled in the default scope and in the default and alt1 sources. More information on scopes and sources.

Built-in transaction types

LUSID provides a number of built-in transaction types such as Buy and Sell.

To list the built-in transaction types, obtain an API access token and call the ListTransactionTypes API for the default scope, for example:

curl -X GET 'https://<your-domain>.lusid.com/api/api/transactionconfiguration/types?scope=default'
  -H 'Authorization: Bearer <your-API-access-token>'

Note it is possible to domicile your own custom transaction types in the default scope.

To get the definition (aliases, movements and sides) of a built-in transaction type such as Buy, call the GetTransactionType API for the default source and default scope, for example:

curl -X GET 'https://<your-domain>.lusid.com/api/api/transactionconfiguration/types/default/Buy?scope=default'
  -H 'Authorization: Bearer <your-API-access-token>'

For an in-depth explanation of the built-in Buy transaction type, see this article.

Built-in sides

At the time of writing, LUSID has nine built-in sides. Four are used by the built-in transaction types for everyday trading: Side1, Side2, BondInt and Side2WithoutBondInterest. The other five support more specialised transactions:

  • BondIntSettlement: the same as BondInt, but for bonds whose purchased interest settles separately from the principal. It records the interest in the settlement currency.

  • Commitment: for capital commitments to private equity and similar funds. It books no units; the committed amount is taken from the gross consideration.

  • CapitalDistribution: for capital returned by such funds without disposing of units. The amount reduces the cost of the remaining holding.

  • Record: moves nothing (zero units and a zero amount), for transactions that exist only to be recorded, such as a deduction from a gross distribution.

  • MultiTaxLotSide: for transactions that specify the tax lots they affect. LUSID books one movement per tax lot, taken from the transaction's multi-tax-lot data.

These are domiciled in the default scope and can only ultimately belong to transaction types also domiciled in the default scope. If you want to use a built-in side with your own transaction type in a custom scope, you must recreate the side in that scope.

To get the definition of a built-in side such as Side1, call the GetSideDefinition API for the default scope, for example:

curl -X GET 'https://<your-domain>.lusid.com/api/api/transactionconfiguration/sides/Side1?scope=default'
  -H 'Authorization: Bearer <your-API-access-token>'

For convenience, definitions for the built-in sides are summarised below. See this article for more information on the allowed values.

Field

Side1

Side2

BondInt

Side2WithoutBondInterest

security

Txn:LusidInstrumentId

Txn:SettleCcy

Txn:SettleCcy

Txn:SettleCcy

currency

Txn:TradeCurrency

Txn:SettlementCurrency

Txn:SettlementCurrency

Txn:SettlementCurrency

rate

Txn:TradeToPortfolioRate

SettledToPortfolioRate

SettledToPortfolioRate

SettledToPortfolioRate

units

Txn:Units

Txn:TotalConsideration

Txn:BondInterest

BaseOnSeparateBondInterest

amount

Txn:TradeAmount

Txn:TotalConsideration

Txn:BondInterest

BaseOnSeparateBondInterest

notionalAmount

0

0

0

0

currentFace

Txn:CurrentFace

Not set

Not set

Not set

The specialised sides are defined as follows:

Field

BondIntSettlement

Commitment

CapitalDistribution

Record

MultiTaxLotSide

security

Txn:SettleCcy

Txn:LusidInstrumentId

Txn:LusidInstrumentId

Txn:LusidInstrumentId

Txn:LusidInstrumentId

currency

Txn:SettlementCurrency

Txn:TradeCurrency

Txn:TradeCurrency

Txn:TradeCurrency

Txn:TradeCurrency

rate

SettledToPortfolioRate

Txn:TradeToPortfolioRate

Txn:TradeToPortfolioRate

Txn:TradeToPortfolioRate

Txn:TradeToPortfolioRate

units

Txn:BondInterestSettlement

0

0

0

Txn:MultiTaxLotData

amount

Txn:BondInterestSettlement

Txn:GrossConsideration

Txn:TradeAmount

0

Txn:MultiTaxLotData

notionalAmount

0

0

0

0

0

currentFace

Not set

Not set

Not set

Not set

Txn:CurrentFace