Skip to main content
POST

Authorizations

Authorization
string
header
required

JWT bearer token issued by the identity provider.

Headers

X-Account-Id
string<uuid>
required

Non-zero UUID of the payer account selected by the calling PSP. The PSP must authorize its end user for that account before calling this API. A resource outside the selected account returns 404; a read with no records returns an empty page. See the API overview for the complete trust boundary.

Pattern: ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$
X-Idempotency
string
required

REQUIRED. Client-supplied replay key, at most 64 bytes. A request without it is refused with PIX-0030 @ 400 before the handler runs. Replaying the same key with a divergent method, URL or body is PIX-0031 @ 412. X-Account-Id is part of the compared request too, so replaying one account's key under another account is divergent rather than a replay.

Required string length: 1 - 64

Path Parameters

authorization_request_id
string
required

Payer-side authorization request identifier. On journey 1 this is the counterparty-issued BACEN idSolicRec; on journeys 2–4 it is a local deterministic identifier. Always use the exact value returned by this API when calling this operation, and never forward a QR-journey value as a BACEN idSolicRec. A request or mandate under a different X-Account-Id is answered 404, not 403, so the caller cannot confirm that a resource exists elsewhere.

Example:

"SC12345678202608276bca619e690"

Body

application/json

The payer's decision, with the parameters to apply when it is an acceptance.

decision
enum<string>
required

The payer's answer to the request.

Available options:
ACCEPT,
REJECT
Example:

"ACCEPT"

parameters
object

The three payer-configurable parameters (Guia v1.2 §6). Accepted only on ACCEPT; an omitted parameter takes its normative default.

rejectionReason
enum<string>

Required on REJECT and forbidden on ACCEPT. NotRecognizedByDebtor: the payer does not recognize the receiver. RejectedByDebtor: the payer has no interest in paying that receiver's charges by Pix Automático.

Available options:
NotRecognizedByDebtor,
RejectedByDebtor
Example:

"RejectedByDebtor"

Response

Recovered duplicate. The same X-Idempotency header was replayed with an identical request, so the FIRST call's response body is returned verbatim and nothing was reprocessed. A replay answers 200 whatever the original status was, so a client tells a replay from a fresh execution by the status code alone. NOTE: this 200 depends on the replay cache. The gate DEGRADES when the cache is unavailable -- it still demands the header, and each route still refuses a second effect through its own durable guard -- but a repeat is then answered by that guard rather than replayed, which for most routes is 409. A client must therefore treat 409 as a possible answer to a retry it believes is a replay, and must not read it as proof that a competing change happened.

authorizationRequestId
string
required

Payer-side request identifier that was decided. It is a BACEN idSolicRec only on journey 1; QR journeys use a local identifier that must not be forwarded to the counterparty.

Example:

"SC12345678202608276bca619e690"

status
enum<string>
required

The status the request reached.

Available options:
ACCEPTED,
REJECTED
Example:

"ACCEPTED"

authorizationId
string

The mandate that was granted. Absent on a rejection, which grants none.

Example:

"01a044a8-f3bd-7488-a0dc-e8d4be4802be"