Tipos de Alteração
Cada item do array changes descreve uma alteração. Esta página detalha o formato de new_value para cada type.
O envelope da alteração
Todos os tipos compartilham a mesma estrutura externa:
{
"type": "collateral",
"operation": "removal",
"target_key": "a1b2c3d4-0000-4000-8000-000000000001",
"new_value": null,
"term_wording": "Texto livre para o termo, no lugar da redação padrão.",
"is_term_signer": false
}
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
type | string | Sim | Dimensão alterada. Valores: financial_flow, collateral, related_party, issue_number, term_clause. |
operation | string | Sim | Valores: addition, modification, removal. Nem toda combinação existe — veja a matriz abaixo. |
target_key | string (UUID) | Condicional | Registro existente endereçado pela alteração. Obrigatório em modification e removal de collateral e related_party. |
new_value | object | Condicional | Conteúdo da alteração. O formato depende do type. Ausente em removal. |
term_wording | string | Não | Até 10.000 caracteres. Redação específica que o termo deve carregar para esta alteração. |
is_term_signer | boolean | Não | Apenas em related_party: a parte endereçada assina o termo aditivo. |
Matriz de combinações
type | addition | modification | removal |
|---|---|---|---|
financial_flow | — | Sim, sem target_key | — |
collateral | Sim, sem target_key | Sim, target_key obrigatório | Sim, target_key obrigatório |
related_party | Sim, sem target_key | Sim, target_key obrigatório | Sim, target_key obrigatório |
issue_number | — | Sim, sem target_key | — |
term_clause | Sim | Sim | Sim — nenhum exige target_key |
Combinação inexistente é recusada com AMD000006, e a mensagem carrega o par tentado. target_key faltando onde é exigido retorna AMD000007.
financial_flow — repactuação do fluxo
Reperfilamento do cronograma de pagamento. Aceita apenas modification.
{
"type": "financial_flow",
"operation": "modification",
"new_value": {
"interest_rate": {
"monthly_rate": 0.0199,
"interest_base": "workdays"
},
"installments": [
{ "installment_number": 3, "due_date": "2026-10-20" },
{ "installment_number": 4, "due_date": "2026-11-20" },
{ "installment_number": 5, "due_date": "2026-12-20" }
]
}
}
new_value
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
interest_rate | object | Condicional | Nova taxa. Ausente, mantém a taxa vigente do título. |
installments | array | Condicional | Somente a cauda renegociada. Mínimo 1 item. |
Pelo menos um dos dois precisa estar presente.
interest_rate
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
interest_base | string | Sim | Base de contagem. Valores: calendar_days, calendar_days_365, workdays. |
annual_rate | number | Condicional | Taxa anual. |
monthly_rate | number | Condicional | Taxa mensal. |
daily_rate | number | Condicional | Taxa diária. |
Informe exatamente uma entre annual_rate, monthly_rate e daily_rate.
installments[]
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
installment_number | integer (≥ 1) | Sim | Número da parcela no cronograma do título. |
due_date | string (date) | Sim | Novo vencimento, em YYYY-MM-DD. |
amount | number (> 0) | Não | Novo valor da parcela. |
principal_amortization_percentage | number | Não | Percentual de amortização do principal. |
amount e principal_amortization_percentage são excludentes dentro da mesma parcela. E enviar interest_rate junto com amount nas parcelas sobredetermina o cálculo e é recusado — escolha o que a QI Tech deve calcular.
Parcelas já pagas não entram no array; a QI Tech as preserva. Uma parcela parcialmente paga não pode ser renegociada (AMD000020).
collateral — garantias
Inclusão ou remoção de garantia. Disponível apenas para operações do tipo commercial_paper e debenture — em qualquer outro tipo, AMD000008.
Inclusão — o new_value carrega a garantia completa, no mesmo formato aceito no cadastro da operação. O campo collateral_type discrimina o formato:
{
"type": "collateral",
"operation": "addition",
"new_value": {
"collateral_type": "fiduciary_alienation_vehicle",
"description": "Veículo dado em alienação fiduciária",
"value": 85000.00
}
}
Remoção — endereça a garantia existente e não leva new_value:
{
"type": "collateral",
"operation": "removal",
"target_key": "a1b2c3d4-0000-4000-8000-000000000001"
}
Tipos de garantia aceitos
bank_surety · contract · fiduciary_alienation_aircraft · fiduciary_alienation_artwork · fiduciary_alienation_equipment · fiduciary_alienation_property · fiduciary_alienation_securities · fiduciary_alienation_vehicle · fiduciary_assignment_shares · guarantor · insurance · monitoring_guarantee · mortgage_property · mortgage_ship · surety · vehicle_stock
O formato de cada tipo é o mesmo do cadastro de garantia na emissão. Garantias que exigem documentos precisam trazê-los — a falta é recusada com AMD000015.
related_party — partes relacionadas
Inclusão, alteração ou remoção de avalista, devedor solidário, fiel depositário e demais papéis.
{
"type": "related_party",
"operation": "addition",
"is_term_signer": true,
"new_value": {
"person_type": "natural",
"name": "Maria Oliveira",
"document_number": "96969879003",
"role_type": "surety",
"street": "Avenida Brigadeiro Faria Lima",
"number": "1234",
"neighborhood": "Itaim Bibi",
"city": "São Paulo",
"state": "SP",
"postal_code": "01451-001",
"signer_group_list": [
{
"minimum_required_signers": 1,
"signers": [
{
"name": "Maria Oliveira",
"document_number": "969.698.790-03",
"email": "maria.oliveira@exemplo.com.br",
"is_group_mandatory": true
}
]
}
]
}
}
Papéis (role_type)
cosigner · fiduciary_debtor · solidary_debtor · surety
issuer e investor não podem ser aditados — a recusa é AMD000014. Emissor e investidor são determinados na emissão do título.
Eleger a parte como signatária
Com is_term_signer: true, a parte assina o termo aditivo:
- Em
additionemodification, onew_valueprecisa trazersigner_group_list— sem ele,AMD000041. - Em
removal, os grupos vêm do cadastro da operação. Parte sem grupo de assinatura não pode assinar:AMD000043. - Com
signature_method: certifiqi, oemailde cada signatário é obrigatório — sem ele,AMD000042. is_term_signerem qualquer outrotypeé recusado comAMD000040.
issue_number — número da emissão
Correção do número da emissão. Aceita apenas modification.
{
"type": "issue_number",
"operation": "modification",
"new_value": { "issue_number": 2 }
}
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
issue_number | integer (≥ 1) | Sim | Novo número da emissão. |
Um número já usado por outra operação ativa do mesmo emissor é recusado com AMD000044.
term_clause — cláusulas do termo
Regeração do documento com campos livres. Não existe cláusula endereçável: o que muda é o template e o mapa de campos que ele consome.
{
"type": "term_clause",
"operation": "modification",
"new_value": {
"document_type": "commercial_paper",
"extra_fields": {
"clausula_decima": "As partes acordam que...",
"foro_eleito": "Comarca de São Paulo - SP"
}
}
}
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
document_type | string | Sim | Valores: commercial_paper, adhesion_term. |
extra_fields | object | Sim | Mapa plano de texto para texto, consumido pelo template. Mínimo 1 chave. |
template_key | string (UUID) | Não | Template específico a ser usado. |
Uma alteração de term_clause não muda dado estruturado no título — o efeito dela vive na redação do termo assinado.