Expense types and payment methods
The type and payment_method values of the fund's expenses and the two calls to use before creating an expense: list the expense types, with what each one requires, and list the fund's contracts that accept a type.
Expense types
type | Description | Contract | Created through the API |
|---|---|---|---|
administration_tax | Administration fee | Yes, from the fund structuring | No: calculated by QI Tech |
management_tax | Management fee | Yes, from the fund structuring | No: calculated by QI Tech |
performance_fee | Performance fee | Yes, from the fund structuring | No: calculated by QI Tech |
custody_tax | Custody fee | Yes | No: calculated by QI Tech |
audit_tax | Audit fee | Yes | Yes |
consulting_fee | Consulting fee | Yes | Yes |
distribution_fee | Distribution fee | Yes (not for rebates) | Yes |
bank_account | Bank account | Yes | Yes |
bankslip_fee | Bankslip fee | Yes | Yes |
sale_commission_tax | Sales commission | Yes | Yes |
certifier_fee | Certification | Yes | Yes |
rating_agency_fee | Rating agency | Yes | Yes |
lawyer_fee | Lawyers | Yes | Yes |
bookkeeping_fee | Bookkeeping fee | Yes | Yes |
insurance_fee | Insurance | Yes | Yes |
collection_agent_fee | Collection agent fee | Yes | Yes |
servicing_fee | Servicing fee | Yes | Yes |
fund_structuring_fee | Structuring fee | Yes | Yes |
credit_rights_registration_fee | Credit rights registration fee | Yes, from the fund structuring | Yes |
origination_fee | Origination fee | Yes | Yes |
pass_through_agent_fee | Pass-through agent fee | Yes | Not accepted |
cvm_tax | CVM fee | No | Yes |
anbima_tax | ANBIMA fee | No | Yes |
cetip_tax | CETIP fee | No | No: calculated by QI Tech |
selic_tax | SELIC fee | No | No: calculated by QI Tech |
notary | Notary | No | Yes |
court_fee | Court fees | No | Yes |
For types that require a contract, the vendor and the contract must exist before posting. For types without a contract, the expense is posted directly.
Payment methods
payment_method | Description |
|---|---|
transfer | TED transfer to the account in payment.target_account. |
pix | Pix to the account in payment.target_account, to the key in payment.target_pix_key or through the QR Code in payment.pix_qrcode. |
bank_slip | Payment of the bankslip in payment.bank_slip.digitable_line. |
automatic_debit | Automatic debit from the fund account in payment.source_account. |
List expense types
| Profile | Host | Required permission |
|---|---|---|
| Manager | manager-api | Read |
| Consultant | consultant-api | Active integration |
Base URL for each host: Environments (Hosts).
{
"data": [
{
"expense_type": "cvm_tax",
"requires_contract": false,
"requires_invoice": false
},
{
"expense_type": "notary",
"requires_contract": false,
"requires_invoice": true
},
{
"expense_type": "audit_tax",
"requires_contract": true,
"requires_invoice": true
}
]
}
| Field | Description |
|---|---|
expense_type | Expense type. |
requires_contract | true when creation requires contract_key. |
requires_invoice | true when the consolidation analysis requires an invoice. |
The list returns the types that can be created: all of them, except those calculated by QI Tech (cetip_tax, selic_tax, custody_tax, administration_tax, management_tax and performance_fee). pass_through_agent_fee appears in the list, but is not yet accepted on creation through the API.
List the fund's contracts by expense type
| Profile | Host | Required permission |
|---|---|---|
| Manager | manager-api | Read |
| Consultant | consultant-api | Read Expenses or Read Consolidations |
Base URL for each host: Environments (Hosts).
Path parameters
| Parameter | Type | Description |
|---|---|---|
fund_class_key | string | Fund class key (UUID). |
expense_type | string | Expense type. |
Query parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
limit | integer | No | Items per page, from 1 to 100. Default: 10. |
page | integer | No | Page, starting at 0. Default: 0. |
Lists the fund's contracts that cover the type and are in progress or active.
{
"requires_contract": true,
"automatic_calculation": null,
"data": [
{
"contract_key": "0a1b2c3d-4e5f-4a6b-8c7d-9e0f1a2b3c4d",
"name": "Auditoria 2026",
"status": "active",
"accepts_expense": true,
"vendor": {
"vendor_key": "5d2e7b9a-3c4f-4e8a-b1d6-9f0a2c3e4b57",
"name": "AUDITORES EXEMPLO S.A.",
"document_number": "44.555.666/0001-81",
"status": "registered",
"agent_key": "a7498c6c-1893-42ec-a8f3-bc6ad0c6b52c"
}
}
],
"limit": 10,
"page": 0,
"is_last_page": true
}
| Field | Description |
|---|---|
requires_contract | false for types without a contract; in that case data is empty. |
automatic_calculation | {"target": ...} when the type is calculated automatically in one of the page's contracts; otherwise null. |
data[].accepts_expense | true when the contract accepts expenses of the type created by the manager or the consultant. Contracts still under analysis accept them, and the expense waits in pending_contract_analysis. false when the type is calculated automatically in that contract. |
data[].vendor | The contract's vendor, as in contract attributes. |
Errors
| Status | code | When it happens |
|---|---|---|
| 400 | EXP000069 | The fund class does not belong to the manager. |
| 403 | EXP000124 | The consultant has no active link with the fund. Usually consultant-api rejects the request earlier, with 401 (CIT000018). |
| 404 | EXP000005 | Nonexistent expense type. |
| 500 | QIT000500 | limit or page out of range or not an integer. The validation of these parameters arrives as an internal error: fix the parameter and repeat the call. |
Authentication, permission and host errors: see API Errors.