You can model a bonus issue as a corporate action of type BonusIssueEvent in LUSID. See all supported corporate actions.
Note the following:
BonusIssueEventis valid for instruments of typeEquityandSimpleInstrument.A bonus issue credits existing holders with additional units of the same instrument, free of payment, in proportion to their holding. No new instrument is involved, so
BonusIssueEventhas nonewInstrumentfield.The entitlement date is the
exDatespecified when you loadBonusIssueEvent, notrecordDate.Amounts are calculated from the total number of instrument units held on the entitlement date, settled and unsettled.
BonusIssueEventrequires exactly oneSecurityOfferElection, even when the participation type isMandatoryand the holder has nothing to choose. LUSID reads the bonus ratio from that election'sunitsRatio, so you must always supply it.The transaction date of the automatically-generated
BonusIssueAdditionalUnitsoutput transaction isexDate. The transaction date of other output transactions ispaymentDate. The settlement date of all output transactions ispaymentDate.
Loading BonusIssueEvent
You must load BonusIssueEvent into a corporate action source registered with one or more portfolios. The event then impacts every registered portfolio with a holding in the underlying instrument. See how to do this.
For more information on fields, see the BonusIssueEvent schema. Where set, the following date validation rules apply: announcementDate ≤ exDate ≤ recordDate ≤ paymentDate
You must choose one of the following participation types:
Participation type | Election(s) | Election choices | Further action required? |
|---|---|---|---|
| Exactly one | Set the following on the single election: ✅ Is chosen ✅ Is default | |
| Exactly one | The above options must be set but can be in any combination on any election. |
Note that none of these election types has an Is declared option; only Is chosen and Is default apply.
Unlike a cash dividend, a bonus issue loaded as MandatoryWithChoices does have a lapse outcome. If LapseElection is the chosen election, LUSID generates no transactions at all and the holding is unchanged.
Handling fractional units
A bonus ratio rarely divides a real holding into whole units. Where SecurityOfferElection is the chosen election, fractionalUnitsRoundingConvention determines what happens to the remainder. It defaults to Floor.
Rounding convention | Outcome |
|---|---|
| LUSID rounds the entitlement down to a whole number of units and sells the fractional remainder for cash, generating a |
| LUSID rounds the entitlement up to the next whole unit and the portfolio purchases the shortfall, generating a |
Both outcomes require you to set fractionalUnitsCashPrice and fractionalUnitsCashCurrency on the event. If either is missing, neither transaction is generated and the fractional remainder is simply not settled.
Instructing to take a different election per portfolio
If you load BonusIssueEvent as MandatoryWithChoices, you can instruct a particular portfolio to take an election other than the chosen one. If you do not, the portfolio takes the chosen election.
To do this, load an event instruction into a portfolio. Note this is not an event, and you do not load it into a corporate action source, which means you can instruct differently in different portfolios. See how to do this.
Configuring the economic impact
You must create some or all of the following transaction types to handle automatically-generated output transactions. They are not provided for you.
Transaction type | Implement the transaction type if… | Intended economic impact |
|---|---|---|
The chosen election is not | Credits additional units of the underlying instrument at a cost of zero. | |
| Settles a fractional remainder in cash if | |
| Rounds a fractional remainder up to a full unit and settles the price difference in cash. | |
| Credits cash for the whole entitlement, at the election's |
You can give a transaction type any economic impact you like. Depending on the chosen election, our recommendations:
Add units to the underlying instrument at zero cost on the additional units leg.
Report cash-in-lieu proceeds as a realised gain using the
ProfitAndLoss/Realised/Marketmetric, since the fractional units sold carry no cost.On the buy-up leg, add the units at the fractional cash price and remove the cash that funded them, so there is no
ProfitAndLoss/Realised/Marketimpact.Report cash offer proceeds as a realised gain using the
ProfitAndLoss/Realised/Marketmetric. The entitlement was never held, so the whole receipt is a gain.
Note: The additional units leg has a total consideration of zero, and LUSID does not currently re-allocate any cost from the existing holding onto the new units. The cost of the underlying holding is therefore unchanged, and average cost per unit falls as a mechanical consequence of the higher unit count. Support for redistributing cost basis across the enlarged holding is planned for a future release.
Reference examples
Mandatory bonus issue
The issuer declares one bonus unit for every ten held. Participation is Mandatory, so every registered portfolio with a holding on the ex-date receives the additional units. Any fractional remainder is sold at 1.80 GBP per unit under the default Floor convention.
[
{
"instrumentEventId": "BONU-ACMECORP-2026",
"instrumentIdentifiers": {
"Instrument/default/ClientInternal": "ACMECORP-EQ"
},
"description": "Bonus issue - Acme Corp (1 new unit for every 10 held)",
"participationType": "Mandatory",
"instrumentEvent": {
"instrumentEventType": "BonusIssueEvent",
"announcementDate": "2026-07-15T00:00:00.0000000+00:00",
"exDate": "2026-08-01T00:00:00.0000000+00:00",
"recordDate": "2026-08-02T00:00:00.0000000+00:00",
"paymentDate": "2026-08-08T00:00:00.0000000+00:00",
"fractionalUnitsCashPrice": 1.80,
"fractionalUnitsCashCurrency": "GBP",
"securityOfferElections": [
{
"electionKey": "SECU",
"isDefault": true,
"isChosen": true,
"unitsRatio": { "input": 10, "output": 11 }
}
]
}
}
]A portfolio holding 10,000 units on 1 August 2026 receives 1,000 additional units, settling on 8 August 2026, at a total consideration of zero.
Bonus issue with choices
The same bonus issue is offered with a choice: take the units, take 2.00 GBP per unit held in cash instead, or decline. The security election is chosen, so portfolios receive units unless instructed otherwise.
[
{
"instrumentEventId": "BONU-ACMECORP-2026-CHOICES",
"instrumentIdentifiers": {
"Instrument/default/ClientInternal": "ACMECORP-EQ"
},
"description": "Bonus issue - Acme Corp (units, cash alternative, or decline)",
"participationType": "MandatoryWithChoices",
"instrumentEvent": {
"instrumentEventType": "BonusIssueEvent",
"exDate": "2026-08-01T00:00:00.0000000+00:00",
"paymentDate": "2026-08-08T00:00:00.0000000+00:00",
"fractionalUnitsCashPrice": 1.80,
"fractionalUnitsCashCurrency": "GBP",
"fractionalUnitsRoundingConvention": "BuyUp",
"securityOfferElections": [
{
"electionKey": "SECU",
"isDefault": true,
"isChosen": true,
"unitsRatio": { "input": 10, "output": 11 }
}
],
"cashOfferElections": [
{
"electionKey": "CASH",
"isDefault": false,
"isChosen": false,
"cashOfferPrice": 2.00,
"cashOfferCurrency": "GBP"
}
],
"lapseElections": [
{
"electionKey": "NOAC",
"isDefault": false,
"isChosen": false
}
]
}
}
]