Request Pix outbound refund
Authentication
Bearer authentication of the form Bearer <token>, where token is your auth token.
Path parameters
Headers
Client-generated idempotency token.
Transaction PIN of the operator in X-Acting-Document. Required on cashout routes when the credential enforces a PIN (428 pin_required).
Real IP of the end user, for integrator credentials calling on their behalf. This is the IP evaluated against cashoutSourceIps — without it the check would see your server’s IP. Ignored for delegated credentials, where the connection IP is already the right one.
Unix seconds. Required on the signed host; tolerance is 300s either way (403 request_timestamp_skew).
Lowercase hex SHA-256 of the body. An empty body hashes the empty string, so the header is always present. Mismatch returns 400 body_hash_mismatch.
Detached JWS (<protected>..<signature>, ES256 or PS256) over METHOD\nPATH?QUERY\nTIMESTAMP\nIDEMPOTENCY_KEY_OR_EMPTY\nX_CONTENT_SHA256.
Request
End-to-end identifier of the original PIX transaction to be refunded. Obtained from the receipt transaction via webhook or query.
Amount to be refunded in BRL. Max 2 decimal places (e.g., 150.75 for R$150,75).
Equal to the original PIX amount for a full refund, or smaller for a partial
refund. It cannot exceed the original amount (400 refund_amount_exceeded).
Currency code (only BRL supported).
Refund reason slug. Required. Mapped 1:1 to the partner bank (MT Bank) refund vocabulary, so any value outside this list is rejected with HTTP 400.
Response
Canonical status (same vocabulary as PIX out):
COMPLETED- refund settled (HTTP 200)FAILED- rejected (HTTP 422)TIMEOUT/PENDING/PROCESSING- not terminal yet (HTTP 202)
Refund D-code / E2E (present once registered).