How do I add a fee to a fund?

Providing you have suitable access control permissions, you can add a fee to a fund, for example a legal fee or a management fee.

Note: You must first create a fee type that determines how LUSID should generate transactions to record fee accruals and fee payments.

A fee can either be:

  • For a fixed amount, for example £25,000.

  • For a percentage of the fund GAV, for example 1%. In addition, you can choose to first subtract other fees before LUSID calculates the amount.

Using the LUSID web app

  1. Sign in to the LUSID web app as a user with suitable permissions.

  2. From the top left menu, select Fund Accounting > Fees and Expenses.

  3. Click the Create fee button and follow the instructions. For more information about fields, see the API section below:
     

Using Luminesce

You can use the Lusid.Fund.Fee.Writer provider. More information.

Using the LUSID API

  1. Obtain an API access token.

  2. Call the CreateFee API, specifying the scope and code of the parent fund and a unique fee code in the URL and, in the body of the request:

    • In the feeTypeId object, the scope and code of the fee type to which the fee belongs.

    • Optionally in the portfolioId object, the scope and code of a transaction portfolio in which LUSID should automatically generate fee accrual and fee payment transactions. If you omit this, LUSID uses the first portfolio registered with the underlying ABOR.

    • A displayName and, optionally, a description and origin (the latter can be used to supplement the description if needed).

    • A treatment of either Daily or Monthly to determine how fees are calculated.

    • A payableFrequency of either Monthly, Quarterly or Annually to determine when fees are paid.

    • Optionally, a startDate and endDate that are valid LUSID datetimes. If you omit these fields, the fee is valid perpetually.

    • Optionally, an anchorDate object consisting of a number representing a month (for example 1 for January) and an appropriate day in that month (for example 15). A fee paid annually pays on this date. A fee paid quarterly first pays on this date, and then at 3 month intervals, so for example 15 April, 15 July and 15 October. A fee paid monthly first pays on this date and then on the same day each month, for example 15 February, 15 March and so on. If you omit this, LUSID uses 1 January.

    • Optionally, a businessDayConvention to determine whether fee accruals are calculated for weekends or not. By default, this is None, which means weekends are treated as normal business days. Specify Previous to add daily accruals for Saturday and Sunday to the total for Friday, and Following to add them to the total for Monday.

    • An accrualCurrency that is an ISO 4217 currency code, for example GBP or USD.

    • Optionally in the properties collection, any number of custom properties from the Fee domain to extend the data model. Alternatively, you can add or remove properties independently using the UpsertFeeProperties API.

    • Either:

      • A totalAnnualAccrualAmount to specify a fixed fee, for example 25000.

      • A feeRatePercentage expressed as a decimal to specify a percentage fee (for example 0.01 to represent 1%), and a calculationBase to determine the amount to calculate the percentage from, for example the entire fund GAV. See how to first subtract other fees

Note: Once created, you can edit just a fee's endDate using the PatchFee API.

Consider the following example, of a fee with a unique code of PercentageLegalFee (in the URL) added to a fund with a scope of Growth and code of Equities:

curl -X POST 'https://<your-domain>.lusid.com/api/api/funds/Growth/Equities/fees/PercentageLegalFee'
  -H 'Content-Type: application/json-patch+json'
  -H 'Authorization: Bearer <your-API-access-token>'
  -d '{
  "feeType": {
    "scope": "MyFeeTypes",
    "code": "LegalFees"
  },
  "name": "Percentage legal fee",
  "treatment": "Daily",
  "payableFrequency": "Quarterly",
  "accrualCurrency": "GBP",
  "businessDayConvention": "Previous",
  "feeRatePercentage": 0.01,
  "calculationBase": "GAV"
}'

Providing the request is successful, the response confirms the defaults LUSID applies to omitted fields:

{
  "feeCode": "PercentageLegalFee",
  "feeType": {
    "scope": "MyFeeTypes",
    "code": "LegalFees"
  },
  "name": "Percentage legal fee",
  "calculationBase": "GAV",
  "accrualCurrency": "GBP",
  "treatment": "Daily",
  "feeRatePercentage": 0.01,
  "payableFrequency": "Quarterly",
  "businessDayConvention": "Previous",
  "startDate": "0001-01-01T00:00:00.0000000+00:00",
  "endDate": "9999-12-31T23:59:59.9999999+00:00",
  "anchorDate": {
    "day": 1,
    "month": 1
  },
  "properties": {},
  ...
}