Registrar uma correção em um contrato registrado
Registra uma correção de algo que o cliente já afirmou sobre um contrato registrado e publica o fato que a nomeia.
Esta NÃO é uma operação da Dataprev: nenhuma credencial da rede é usada e nenhuma fronteira governamental é atravessada. O Manual 005 revisão 1.13 declara que os campos de retificação da rede não são mais usados e sempre retornam null, portanto o cliente é a única autoridade que uma correção pode ter — source_authority é sempre client.
NADA É ALTERADO. Uma correção é um acréscimo que nomeia o que ela substitui, e o registro que ela corrige permanece imutável no banco de dados exatamente como estava. Corrigir a mesma coisa duas vezes acrescenta uma segunda correção que substitui a primeira.
O gateway assume a custódia do recurso corrigido e calcula o SHA-256 dele por conta própria; um digest declarado pelo cliente nunca é aceito. O fato publicado carrega um caminho de mesma origem de volta a este gateway mais esse digest, e o consumidor o busca e o verifica por M2M autenticado.
| correction_type | payment_reference | supersedes |
|---|---|---|
ccb | deve estar vazio | a correção de CCB anterior, ou nada na primeira |
disbursement | obrigatório | o pagamento confirmado que ela repara, depois a correção anterior desse pagamento |
Uma correção de disbursement que nomeia um pagamento para o qual esta instalação não possui confirmação é recusada com 404: uma substituição que aponta para nada é pior do que nenhuma correção.
X-Idempotency é obrigatório, opaco, de 1..128 bytes, e nunca assume valor padrão. O PostgreSQL é a autoridade: a mesma chave repete o corpo 202 idêntico e não publica um segundo fato, e a mesma chave carregando uma correção diferente responde 422 sem nunca retornar o corpo anterior.
Autorizações
JWT bearer token issued by the identity provider.
Cabeçalhos
Mandatory opaque replay key, 1..128 bytes of valid UTF-8, preserved byte for byte. No default, no alias header, no case folding: two keys differing in one byte are two keys.
1 - 128"idem-correcao-0001"
Parâmetros de caminho
The rail contract number the correction is about. Exact, control-free UTF-8, bounded in BYTES: 2..15, which is the consumer's own bound for this field.
2 - 15"99999999999AN1"
Corpo
Media type of the corrected resource. Its media type must be application/pdf or application/zip — parameters are permitted — and the bytes are sniffed against it.
128"application/pdf"
What this correction corrects. Selects which fact is published; the payload shape is identical for both.
ccb, disbursement "ccb"
Original file name of the corrected resource.
255"ccb-corrigida.pdf"
The payment_reference of the confirmed disbursement this correction repairs. Required when correction_type is disbursement, and must be empty otherwise.
256"E32074986202608011200A1B2C3D4E5F"
Canonical base64 of the corrected resource. The gateway computes the SHA-256 itself; no client-declared digest is accepted.
8388608"JVBERi0xLjcKJSVFT0Y="
Resposta
The correction is durably recorded and its fact queued. A replay under the same key answers with the identical body.
The gateway's identity for this correction. It is also the published event id.
"1f5b9c26-6f5a-4f77-9c1c-5d1c0f0a9b21"
What was corrected.
"ccb"
When the gateway took custody, strict RFC 3339 UTC.
"2026-08-29T12:00:05Z"
The rail contract number, echoed from the path.
"99999999999AN1"
Lowercase hex SHA-256 the gateway computed over the corrected bytes.
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
Same-origin relative path serving the corrected resource under M2M bearer auth.
"/v1/consignado/contracts/99999999999AN1/corrections/1f5b9c26-6f5a-4f77-9c1c-5d1c0f0a9b21"
Who is authoritative for the corrected value. Always client on this gateway.
"client"
The event id this correction supersedes: the corrected disbursement confirmation, or the previous correction. ABSENT on a first CCB correction, meaning the original contract fact.
"7c2a1b40-11f4-4a1e-9a44-1f4d7cbb8e02"

