Create fraud marker
Reports the fraud marker to BACEN (createFraudMarker, idempotent on a RequestId derived from X-Idempotency) and persists it once BACEN confirms. Always synchronous: an ambiguous outcome or a replay is reconciled inline — when this request’s operation already carries BACEN’s id, the marker BACEN serves under it (checked against the request’s document, key and fraud type) is persisted and answered with 201. With no id known yet the answer is 503 SPI-1010, retry with the same X-Idempotency: when BACEN never answered, the reconciliation sweep resends the create with the same RequestId (which BACEN dedups) and records the id, after which the retry is answered 201; when BACEN confirmed without an id, the operation goes to manual review and the retry is answered once an operator resolves it. 422 when BACEN refuses the marker.
Autorizaciones
JWT bearer token issued by the identity provider.
Encabezados
Required key used to prevent replaying the mutation.
Cuerpo
Fraud marker reported to BACEN first; only a CONFIRMED report is persisted locally, minimized — a rejection or ambiguous outcome creates no local row. Tracked by report_status=SENT + the durable operation intent (operationId) that created it; PII inputs (key value, owner tax ID) are hashed before storage.
BACEN fraud classification: APPLICATION_FRAUD, MULE_ACCOUNT, SCAMMER_ACCOUNT, OTHER, or UNKNOWN
APPLICATION_FRAUD, MULE_ACCOUNT, SCAMMER_ACCOUNT, OTHER, UNKNOWN "MULE_ACCOUNT"
Plaintext owner tax ID (CPF/CNPJ) the marker is associated with, shaped as the SPI wire type PICpfCnpj: 11 digits for a CPF, 14 alphanumeric characters for a CNPJ. BACEN requires it in the clear and its pattern rejects a hash, so it is sent verbatim inside the signed body. The clear value is also kept in the operation request_body, the BACEN snapshot, the MED snapshot facts and the responses; the row column holds its HMAC hash. Never logged.
^([0-9]{11}|[0-9A-Z]{12}[0-9]{2})$"52998224725"
ISPB (8 digits or uppercase letters) of the participant raising the fraud marker
^[0-9A-Z]{8}$"12345678"
Optional plaintext Pix key of the fraudster, informed when known so the key also receives the fraud mark; a blank value is treated as absent. The clear key travels in the signed BACEN body, the operation request_body, the BACEN snapshot, the MED snapshot facts and the fraud-marker responses; the row column holds its HMAC hash. Never logged. At most 77 characters, the ceiling BACEN publishes on a DICT key.
77"usuario@example.com"
Respuesta
Created
Persisted minimized fraud marker and the operation that created it.
Record creation timestamp (RFC 3339, UTC)
"2026-06-14T12:00:00Z"
BACEN fraud classification: APPLICATION_FRAUD, MULE_ACCOUNT, SCAMMER_ACCOUNT, OTHER, or UNKNOWN
"MULE_ACCOUNT"
BACEN-assigned fraud-marker resource UUID — the public, canonical identity of this record
"550e8400-e29b-41d4-a716-446655440002"
HMAC hash of the marked Pix key value (hex); empty when no key was given
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
HMAC hash of the owner tax ID (hex); kept for consumers that index/audit on the minimized projection
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
ISPB (8 digits or uppercase letters) of the participant that raised the fraud marker
"12345678"
BACEN report delivery state. Always SENT at rest (a resource row is persisted only once BACEN has confirmed it; a rejected or ambiguous attempt creates no row).
"SENT"
Local fraud-marker state: ACTIVE (counts toward fraud stats) or INACTIVE (retained for audit only)
"ACTIVE"
Last update timestamp (RFC 3339, UTC)
"2026-06-14T12:00:00Z"
BACEN's own operational envelope for its most recent interaction on this fraud marker, including its LastModified version; omitted when no BACEN interaction has ever landed on it.
When BACEN created this fraud marker (RFC 3339, UTC); distinct from createdAt
"2026-06-14T12:00:00Z"
Clear Pix key value the caller informed or BACEN echoed (ExtendedFraudMarker.Key); omitted when no key is known
"usuario@example.com"
Durable MED operation-intent id of the create that produced this marker; always present.
"01930000-0000-7000-8000-000000000000"
Durable operation-intent status. COMPLETED on an ordinary create; any other value means the marker was reconciled from BACEN inline (or a replay served the row an earlier attempt wrote) and the operation is still the reconciliation's to complete (the sweep, or an operator for MANUAL_REVIEW).
COMPLETED, UNKNOWN_OUTCOME, MANUAL_REVIEW, SYNC_PENDING, RESERVED, SUBMITTED, CONFIRMED "COMPLETED"
BACEN-assigned infraction that originated this marker (ExtendedFraudMarker.InfractionReport.Id); omitted when there is none
"550e8400-e29b-41d4-a716-446655440005"
Reporter ISPB of the originating infraction (ExtendedFraudMarker.InfractionReport.ReporterParticipant); omitted when there is none
"12345678"
Durable operation-intent id that produced this snapshot's current state, when known
"01930000-0000-7000-8000-000000000000"
BACEN-observed clear owner tax ID (CPF/CNPJ) — ExtendedFraudMarker.TaxIdNumber; omitted when BACEN has never echoed one back
"52998224725"

