Skip to main content

Simulate the Present Value of an Extraordinary Amortization

This endpoint simulates an extraordinary amortization of type present_amount without creating any event — it is a pure calculation, with no side effects. From the installments provided in installment_list, the service calculates and returns the total amount (Present Value) of the extraordinary event that would be created, plus the Present Value of each event_conciliation (type extraordinary) per installment — the integrator does not calculate Present Value on their side.

amortization_type is not sent in the request: since this is a Present Value simulation, the type is always present_amount. amount is not sent either — it is the result of the calculation. The reference_date is provided by the caller and is the only temporal reference used by the service to classify overdue installments and apply the pro-rata Present Value discount; in the simulation, the due_date is assumed to be equal to the reference_date.

The response is the ready-to-use creation payload: just remove the event_conciliation_list field — which is informational only — and send it as the body of Create Extraordinary Amortization to execute the simulated amortization.


Request

ENDPOINT
/event_conciliation/extraordinary_event/present_value_simulation
METHOD
POST

Request Body

{
"security_key": "971380d4-469e-48f6-a64b-3afb8a88109e",
"investment_key": "<investment_key>",
"reference_date": "2026-04-24",
"installment_list": [1, 2]
}

Request Body Params

FieldTypeRequiredDescription
security_keystring (UUID)YesUnique key of the asset (security) on which the amortization will be simulated.
investment_keystring (UUID)YesKey of the target investment. Used as the proportional basis for the Present Value calculation.
reference_datestring (date)YesReference date in YYYY-MM-DD format. Provided by the caller — the service uses it as "today" to classify overdue installments and apply the pro-rata Present Value discount. In the simulation, it is also used as the due_date.
installment_listarray of integers (≥ 1)YesList of installment_number (not UUIDs) of the target installments, with minItems: 1. The service resolves each number against the security's installment_number; non-existent numbers return EVC000007.

Unlike creation, amortization_type, amount, and due_date are not sent: the type is always present_amount, the amount is calculated by the service, and the due_date is assumed to be equal to the reference_date.


Response

STATUS
200
Response Body
{
"security_key": "971380d4-469e-48f6-a64b-3afb8a88109e",
"investment_key": "<investment_key>",
"amortization_type": "present_amount",
"amount": 4750.00,
"reference_date": "2026-04-24",
"due_date": "2026-04-24",
"installment_list": [1, 2],
"event_conciliation_list": [
{
"installment_number": 1,
"amount": 2400.00
},
{
"installment_number": 2,
"amount": 2350.00
}
]
}

Response Body Params

FieldTypeDescription
security_keystring (UUID)Asset key — echoes the value sent.
investment_keystring (UUID)Target investment key — echoes the value sent.
amortization_typestringAlways present_amount — filled in by the service to compose the creation payload.
amountnumberTotal Present Value calculated for the extraordinary event (sum of the amount fields in event_conciliation_list).
reference_datestring (date)Reference date — echoes the value sent.
due_datestring (date)Target settlement date — equal to the reference_date sent.
installment_listarray of integersTarget installments — echoes the value sent.
event_conciliation_listarrayPresent Value per installment of the event_conciliation (type extraordinary) that would be generated. For visualization only — not part of the creation payload. Object event_conciliation_list.
info

The event_conciliation_list field is for visualization only — it shows the Present Value simulation for each installment and must not be included in the creation payload of the extraordinary event. To execute the simulated amortization, send the response without event_conciliation_list as the body of Create Extraordinary Amortization.

Object event_conciliation_list

FieldTypeDescription
installment_numberintegerNumber of the installment (installment_number) this conciliation event refers to.
amountnumberPresent Value calculated for the event_conciliation (type extraordinary) of this installment.

Errors

CodeHTTPMeaning
EVC100002400installment_list is required and cannot be empty.
EVC100004400One of the provided installments does not belong to the target security.
EVC000007404An integer in installment_list does not match any installment_number of the security (InstallmentNumberNotFound).
QIT000001400Schema failure — for example, an installment_list item that is not an integer ≥ 1.
EVC100008400There is already a pending extraordinary amortization for the installment — cancel it before simulating/creating another.
EVC100013424Dependency temporarily unavailable (Failed Dependency). Transient — retry once it is restored.

EVC100005 (insufficient amount) does not apply to the simulation — the amount is calculated by the service, not sent.

See the Error catalog for complete resolution.


See also