LUSID is transitioning to a model where corporate actions have dedicated event types, for example CashDividendEvent, DividendReinvestmentEvent or AccumulationEvent. More information.

If an appropriate event type is not yet available, you can model any kind of corporate action as a TransitionEvent by considering the impact of inputs (the number and cost basis of units currently held) on outputs (the number and cost basis of future units, in the same instrument or in different ones).

Note: You might need to create multiple transition events to model some corporate actions.

A transition event must have:

  • A single input transition for the instrument that is the subject of the corporate action, with a units factor representing the number of units held and a cost factor representing the cost basis of those units.
  • One or more output transitions, each of which references a particular instrument (the same instrument, or a different one) and also has a units factor and a cost factor. The ratio of the two units factors determines the impact of the corporate action on the quantity of the holding, and the ratio of the two cost factors determines the impact of the corporate action on the cost basis of the holding.

See how to upload a corporate action.

Corporate action example
(see also the examples in this Jupyter Notebook)
# of transition eventsInput transitionOutput transition(s)
InstrumentUnits factorCost factorInstrumentUnits factorCost factor
Cash dividend of 35p per share of Company A. See the example below.1Company A10GBP0.350
2 for 1 stock split for Company A.1Company A11Company A21
Spin off 1 new share in Company B for every 10 shares in Company A, taking 20% of the book cost.1Company A101Company A100.8
Company B10.2
Takeover of Company A by Company B, replacing each Company A share with 0.8 share in Company B, plus 50p per share.2Company A10GBP0.50
Company A11Company A00
Company B0.81

Example: Modelling a cash dividend as a transition event

The following call to the UpsertInstrumentEvents API uploads a corporate action representing a cash dividend of 35 cents per Company A share to a particular corporate action source:

curl -X POST 'https://<your-domain>'
 -H 'Content-Type: application/json-patch+json'
 -H 'Authorization: Bearer <your-API-access-token>'
 -d '[
    "instrumentEventId": "CompanyACashDividend-2023-02-13",
    "instrumentIdentifiers": {
      "Instrument/default/Figi": "BBG000BPH459"
    "description": "Company A cash dividend of 35 cents per share",
    "instrumentEvent": {
      "instrumentEventType": "TransitionEvent",
      "announcementDate": "2023-02-01T00:00:00.0000000+00:00",
      "exDate": "2023-02-13T00:00:00.0000000+00:00",
      "recordDate": "2023-02-13T00:00:00.0000000+00:00",
      "paymentDate": "2023-02-17T00:00:00.0000000+00:00",
      "inputTransition": {
        "unitsFactor": 1,
        "costFactor": 0
      "outputTransitions": [
          "instrumentIdentifiers": {
            "Instrument/default/Currency": "GBP"
          "unitsFactor": 0.35,
          "costFactor": 0

Note the following:

  • The instrumentEventId is a free string field that must uniquely identify this corporate action in the corporate action source.
  • The instrumentIdentifiers field uses a FIGI to resolve to an instrument representing Company A mastered in the LUSID Security Master.
  • The exDate is 13 February and the paymentDate is 17 February 2023. The other dates are informational.
  • The inputTransition has a unitsFactor of 1 to represent each Company A share, and a costFactor of 0 since this corporate action does not impact the cost basis of these shares (highlighted in red).
  • The single outputTransition impacts the GBP currency instrument, has a unitsFactor of 0.35 to represent the 35 cents per share, and a costFactor of 0 (highlighted in yellow).