---
title: "Create a fee collection"
method: POST
path: "/fees/collections"
tags: ["Fees"]
---

# Create a fee collection

`POST /fees/collections`

Creates a fee collection for pre-calculated fee amounts.

## Headers

- `idempotency-key` string, uuid, required

## Request body

- object
  - `account_id` string, uuid, required — Account unique identifier.
  - `type` 'SERVICE_FEE' | 'SERVICE_FEE_LIQUIDATION', required — Type of the fee collection * SERVICE_FEE - Service fee intake in a pre-defined cadence (e.g. monthly) * SERVICE_FEE_LIQUIDATION - Service fee intake as a result of a Portfolio liquidation
  - `collection_amount` string, required
  - `currency` 'EUR' | 'GBP', required — Alphabetic three-letter [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code. * EUR - Euro * GBP - Pound Sterling
  - `period_start` string, date, required — Start date of the fee collection period in YYYY-MM-DD format. [RFC 3339, section 5.6](https://json-schema.org/draft/2020-12/json-schema-validation.html#RFC3339) RFC 3339
  - `period_end` string, date, required — End date of the fee collection period in YYYY-MM-DD format. [RFC 3339, section 5.6](https://json-schema.org/draft/2020-12/json-schema-validation.html#RFC3339) RFC 3339

## Response `200`

Fee collection created.

- object
  - `id` string, uuid, required — Fee collection unique identifier.
  - `created_at` string, date-time, required — Date and time when the resource was created. [RFC 3339-5](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6), [ISO8601 UTC](https://www.iso.org/iso-8601-date-and-time-format.html)
  - `updated_at` string, date-time, required — Date and time when the resource was last updated. [RFC 3339-5](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6), [ISO8601 UTC](https://www.iso.org/iso-8601-date-and-time-format.html)
  - `account_id` string, uuid, required — Account unique identifier.
  - `account_group_id` string, uuid, required — Account group unique identifier.
  - `type` 'SERVICE_FEE' | 'SERVICE_FEE_LIQUIDATION', required — Type of the fee collection * SERVICE_FEE - Service fee intake in a pre-defined cadence (e.g. monthly) * SERVICE_FEE_LIQUIDATION - Service fee intake as a result of a Portfolio liquidation
  - `collection_amount` string, required
  - `processed_amount` object, required
    - `cash_balance` string
    - `sell_to_cover` string
    - `total_residual_amount` string
  - `sell_to_cover_orders` object[]
    - `id` string, uuid, required — Sell to cover order id used to cover fee amount.
    - `residual_amount` string, required
  - `currency` 'EUR' | 'GBP', required — Alphabetic three-letter [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code. * EUR - Euro * GBP - Pound Sterling
  - `status` 'PROCESSING' | 'FINALISED' | 'CANCELLED', required — Status of the fee collection * PROCESSING - Fee collection is in progress. * FINALISED - Fees have been collected from the account and the funds has been transferred to the client. * CANCELLED - Fee collection has been cancelled.
  - `period_start` string, date, required — Start date of the fee collection period in YYYY-MM-DD format. [RFC 3339, section 5.6](https://json-schema.org/draft/2020-12/json-schema-validation.html#RFC3339) RFC 3339
  - `period_end` string, date, required — End date of the fee collection period in YYYY-MM-DD format. [RFC 3339, section 5.6](https://json-schema.org/draft/2020-12/json-schema-validation.html#RFC3339) RFC 3339
  - `calculation_breakdown` object[] — Breakdown of the fee collection by fee model and subperiod. Populated only for fee collections created from daily fee model calculations.
    - `fee_model_id` string, uuid, required — Fee model unique identifier.
    - `subperiod_start` string, date, required — Start date of the fee subperiod in YYYY-MM-DD format. [RFC 3339, section 5.6](https://json-schema.org/draft/2020-12/json-schema-validation.html#RFC3339) RFC 3339
    - `subperiod_end` string, date, required — End date of the fee subperiod in YYYY-MM-DD format. [RFC 3339, section 5.6](https://json-schema.org/draft/2020-12/json-schema-validation.html#RFC3339) RFC 3339
    - `subtotal_amount` string, required
    - `components` object[], required — Individual fee components contributing to the subtotal.
      - `type` 'TRANSACTION_LUMP_SUM' | 'PLATFORM' | 'SERVICE' | 'VAT', required — Type of the fee component * TRANSACTION_LUMP_SUM - Lump sum transaction fee * PLATFORM - Platform fee * SERVICE - Service fee (client portfolio) * VAT - Value-added tax
      - `amount` string, required
  - `replaced_collection_id` string, uuid — Fee collection unique identifier.

## Other responses

- `400` — Bad Request. The incoming request had a malformed parameter/object.
- `401` — Unauthorized. The caller has not been authenticated.
- `403` — Forbidden. The caller has been authenticated but is not allowed to take the requested action.
- `404` — Not Found. The requested resource could not be found.
- `406` — Not Acceptable. The resource does not have a current representation that would be acceptable to the user agent. "Accept" header defined unsupported value.
- `429` — Too Many Requests. The caller has exceeded their quota for the time period and has been throttled.
- `500` — Internal Server Error. The service encountered an unexpected error.
- `503` — Service Unavailable. The service handling for this request cannot be reached at this time.
- `504` — Gateway Timeout. The service gateway has reached its internal timeout.

---

[API](https://skmtc.net/upvest/apis/upvest-investment-api.md) · [All operations](https://skmtc.net/upvest/apis/upvest-investment-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/upvest/upvest-investment-api/revisions/2c6bc192bc09/schema)
