Fees intake
Calculation of the fees
Based on the user's account valuation, Upvest calculates daily fees for each account with the specified fee configuration.
To determine the outstanding fee amount, Upvest totals all unpaid fee calculations on the account. If the result is more than 1 cent, Upvest creates a fee collection. You will receive a FEE_COLLECTION.CREATED
event. Upvest then initiates the collection of the money:
For scheduled collections, you can specify the collection method as described above.
For liquidation fees, the fee is automatically collected from the income from the sales orders.
Fee collection on account liquidation
Although an account liquidation does not necessarily mean that the account will be closed and unable to pay fees in the future, Upvest collects the outstanding fees each time the account is liquidated to increase the likelihood that the fees will be collected.
This process differs from a regular fee collection as it does not involve separate sell orders for the fees, but takes the money from the sell orders on liquidation.
If the account is linked to a fee model in a fee configuration, the following sequence of events is triggered by the account liquidation request:
- Upvest initiates a fee collection
Upvest initiates a fee collection immediately upon receipt of the account liquidation request.
The client will receive aFEE_COLLECTION.CREATED
event with typeSERVICE_FEE_LIQUIDATION
. - Sales of account positions is triggered
The account liquidation process triggers the complete sale of all positions in the account. The cash received from these sales is blocked for withdrawal not only before settlement, but also before Upvest collects the fees.
- Fee collection
Immediately after the sales orders have been settled, Upvest checks whether the settled amount covers the outstanding fee payment and collects the fee as quickly as possible.
- Fee collection events
You will receive the same set of events as in regular fee collection:
EXECUTION.SETTLED
eventCASH_BALANCE.UPDATED
(multiple times, at least once for settlement and once for the cash balance decrease).CASH_TRANSACTION.EXECUTED
event of typeFEE_COLLECTION
FEE_COLLECTION.FINALISED
Example event for fee collection on account liquidation
{
"id": "38fc59d0-fc42-46ef-9512-824773219b2e",
"created_at": "2023-08-19T13:06:57.820371265Z",
"type": "FEE_COLLECTION.CREATED",
"webhook_id": "1b097e06-8a14-4181-b72a-de0972a3c57b",
"object": {
"account_group_id": "999f7566-2ca3-4007-b99d-e501be8c7222",
"account_id": "689f7566-2ca3-4007-b99d-e501be8c7783",
"collection_amount": "12.41",
"created_at": "2022-11-30T14:16:22Z",
"currency": "EUR",
"id": "d77e6924-9bb7-4db0-addc-404442258f4b",
"period_start": "2022-11-01",
"period_end": "2022-11-30",
"processed_amount": {
"cash_balance": "0",
"sell_to_cover": "0"
},
"status": "PROCESSING",
"type": "SERVICE_FEE_LIQUIDATION",
"updated_at": "2022-11-30T14:16:22Z"
}
}