Pular para o conteúdo principal

Changelog

Historico de mudancas que afetam a integracao M2M de originadores.


v1.0.0 (2026-06-03) — GA: Motor de Taxas (PMP) e Limites de Valor

Melhorias

  • Taxa variavel por prazo (PMP) — policies com rate_schedule agora tem a taxa mensal interpolada pelo Prazo Medio Ponderado da operacao. POST /v1/simulate retorna weighted_avg_days e o objeto policy_used (rate_from_schedule, schedule_day_used).
  • product_id e policy_id no /v1/simulate — filtre as policies por produto financeiro (product_id) ou force uma policy especifica do originador (policy_id).
  • Limites de valor por entidade — operacoes podem ser barradas (403) se o valor total ficar fora da janela permitida por cedente / sacado / originador (regra most-restrictive-wins): novos codigos LIMIT_MAX_OPERATION_VALUE e LIMIT_MIN_OPERATION_VALUE (com source indicando a camada).
  • Validacao de CET — taxa efetiva fora do intervalo [min, max] da policy retorna 422 CET_OUT_OF_BOUNDS.

Documentacao

  • Schemas OpenAPI enriquecidos com examples e descricoes em todos os campos de request (/simulate, /operations/direct, /stock).
  • Pagina de Simulacao e Operacoes atualizadas com a hierarquia de taxas, PMP e limites.

v0.7.0 (2026-06-10) — Nomenclatura Consistente (BREAKING CHANGE)

Renomeacao de campos (breaking change)

Campos de request (recebiveis):

AntesAgora
valuerequested_advance_value
total_asset_backingnet_face_value
expected_datedue_date
face_value (estoque)gross_face_value
expected_advance_value (estoque)requested_advance_value
gross_value_brl (estoque)removido (usar gross_face_value)
net_value_brl (estoque)net_face_value
expected_due_date (estoque)due_date

Novo campo: gross_face_value (opcional) — valor bruto do lastro. Se omitido, assume net_face_value.

Campos de response (operacao — prefixo opr_):

AntesAgora
total_face_value_brlopr_gross_face_value
liquid_value_brlopr_liquid_value
total_discount_brlopr_discounted_value
original_value (por item)requested_advance_value

Novo campo: opr_net_face_value — soma dos net_face_value da operacao.

Novo endpoint

  • POST /v1/stock/simulate-anticipation — simular antecipacao a partir de itens do estoque (read-only, sem criar operacao)

v0.6.0 (2026-06-10) — Resiliencia e DX

Melhorias

  • JWKS com retry e backoff — validacao de JWT agora resiliente a falhas de rede transientes (3 tentativas, timeout 10s)
  • Dockerfile otimizado — base image migrada para ECR Public Gallery (builds mais rapidos e confiaveis)
  • Pipeline CI/CD — SSM atualizado automaticamente apos migrations (go-live.yml)

Documentacao

  • Response examples adicionados em todos os endpoints publicos
  • Postman Collection disponivel para download

v0.5.0 (2026-05-25) — Cedentes e Dados Bancarios

Novos endpoints

  • POST /v1/assignors — cadastrar cedente explicitamente (dedup automatico por documento)
  • PATCH /v1/assignors/{id} — atualizar dados do cedente

Melhorias

  • bank agora e opcional em POST /v1/operations/direct — omitir = PIX automatico via CPF/CNPJ do cedente
  • bank.use_document_pix — forcar PIX via documento do cedente explicitamente
  • Nomenclatura padronizada: campo fees (campo taxes aceito como alias para backward compat)
  • Dedup por CNPJ em POST /v1/assignors — se documento ja existe para o originador, retorna 200 com _matched_by

v0.4.0 (2026-02-20) — Token Limits e Nomenclatura

Melhorias

  • Token limits — tokens M2M podem ter limites: max_operation_value_brl, min_term_days, max_term_days. Operacoes que excedem o limite sao rejeitadas com 403
  • Renomeacaoadvance_value renomeado para liquid_value em toda a API (requests e responses). Campo antigo descontinuado
  • external_ref idempotente em originators e assignors

v0.3.0 (2026-02-07) — Hierarquia de Taxas

Melhorias

  • Hierarquia de taxas 5 niveis: recebivel > operacao > cedente > sacado > policy do originador
  • 3 modalidades cumulativas: monthly_rate_pct (% mensal pro-rata), discount_pct (% desagio fixo), fixed_discount_brl (R$ nominal)
  • Simulacao agora aceita assignor_document para aplicar defaults do cedente
  • Response models tipados em todos os endpoints publicos (melhora a documentacao OpenAPI/Swagger)

v0.2.0 (2026-06-02) — Fluxo Completo

Novos endpoints

  • POST /v1/stock/request-anticipation — solicitar antecipacao a partir do estoque
  • POST /v1/simulate — simular antecipacao sem persistir
  • POST /v1/operations/direct — criar operacao em uma unica chamada
  • GET /v1/originators/me — consultar dados do originador

Melhorias

  • Contratos ZapSign com 223 variaveis parametrizadas
  • Accrual diario de juros e multa no saldo devedor

v0.1.0 (2026-06-02) — Release Inicial

Endpoints

  • Auth JWT + M2M (X-Client-Id / X-Client-Secret) com protecao brute force
  • CRUDs: sacados, cedentes, contas bancarias, estoque, operacoes, titulos
  • Webhooks outbound HMAC-SHA256 com retry 7x
  • Lifecycle completo de operacao: simulacao > criacao > aprovacao > contrato > pagamento PIX > conciliacao

Infraestrutura

  • PostgreSQL 16, FastAPI, ECS Fargate
  • Idempotencia obrigatoria em POSTs financeiros (Idempotency-Key)
  • Tenant isolation por originator_id em todas as queries