Skip to main content

Expense Submission

Forward an expense for QI Tech analysis. Submission is only required when the expense was created without documents — otherwise, the expense is already automatically forwarded during creation.

Attention
  • At least one document attached to the expense is required before submitting.
  • Only expenses in the created status can be submitted through this endpoint. Expenses that were created with documents will already be in the pending_adm_approval status and do not need to be submitted again.

Request​

ENDPOINT
/expense_submission/fund_class/{fund_class_key}/contract/{contract_key}/expense/{expense_key}/submit
METHOD
PUT

Path params​

ParameterTypeDescription
fund_class_keystringUnique key of the fund (UUID)
contract_keystringUnique key of the contract
expense_keystringUnique key of the expense (UUID)

This endpoint does not require a request body.

Response​

STATUS
200
Response Body
{
"expense_key": "7f3e9a1b-2c4d-5e6f-8901-abcdef234567",
"contract_key": "contrato-auditoria-2026",
"status": "pending_adm_approval",
"payment_method": "transfer",
"start_deferral_date": "2026-06-02",
"end_deferral_date": "2026-06-30",
"description": "Honorários de auditoria referente ao 1º semestre de 2026",
"payment": {
"target": {
"name": "AUDITORES EXEMPLO S.A.",
"document_number": "12.345.678/0001-90"
},
"target_account": {
"account_number": "123456",
"account_branch": "0001",
"account_digit": "0",
"financial_institution_code": "341"
},
"transfer_type": "wire_transfer",
"source_account": {
"account_key": "5e621ba2-b4ac-4ddd-9893-82d220e1577e"
}
},
"payment_value": 15000.00,
"payment_date": "2026-07-01",
"rebate_expense_key": null,
"fund_class": {
"name": "FUNDO DE INVESTIMENTO EM DIREITOS CREDITÓRIOS EXEMPLO",
"manager": {
"name": "EXEMPLO GESTORA LTDA",
"manager_key": "a7498c6c-1893-42ec-a8f3-bc6ad0c6b52c",
"document_number": "45.585.471/0001-47"
},
"fund_class_key": "4b8377d0-58ec-479f-8ee9-9f963d5c47ad",
"document_number": "60.910.091/0001-24"
}
}

Response attributes​

FieldTypeDescription
statusstringNew status of the expense. Always returns pending_adm_approval after a successful submission.

The remaining fields follow the same structure as the expense creation.

Possible errors​

STATUS
404
Expense not found

The fund_class_key + contract_key + expense_key set does not correspond to any registered expense.

{
"title": "Expense Not Found",
"description": "Expense with key {expense_key} was not found.",
"translation": "A despesa com chave {expense_key} não foi encontrada.",
"code": "ESB000016"
}
STATUS
400
Expense without documents

There are no documents attached to the expense. Upload at least one document before submitting.

{
"title": "Submission Must Have At Least One Pending Analysis Document",
"description": "Expense {expense_key} must have at least one document in pending_adm_approval or approved status.",
"translation": "A despesa {expense_key} deve ter ao menos um documento em status pending_adm_approval ou approved.",
"code": "ESB000025"
}
Invalid status transition

The expense is not in the created status and cannot be submitted through this endpoint.

{
"title": "Cannot Update Expense In This Status",
"description": "Expense {expense_key} cannot be updated with status {current_status}.",
"translation": "A despesa {expense_key} não pode ser atualizada com o status {current_status}.",
"code": "ESB000023"
}

Next steps​

After submitting the expense, wait for the QI Tech analysis. You can track the status via:

Query the expense — check the current status of the expense.