Pix Out (Cash Out)
Requests sending a Pix payment (cash-out) to a given Pix key.
| Method | POST |
| Path | /api/pix/out |
| Authentication | Authorization (****** + Channel-Id |
Authentication
Requires the Authorization header with a valid, non-expired token, previously
issued for the integrator. If missing, malformed, or the token is
invalid/expired, the API returns 401 Unauthorized:
{ "error": "Token ausente ou inválido" }
or
{ "error": "Token inválido" }
Also requires the Channel-Id: <channel_id> header. If missing, it returns
400 Bad Request:
{ "error": "Channel-Id header is required" }
Request body
{
"value": 1500,
"receiver_name": "Fulano de Tal",
"receiver_cpf": "12345678900",
"receiver_email": "fulano@example.com",
"pix_key": "fulano@example.com",
"pix_key_type": "EMAIL",
"description": "Pagamento de serviço",
"additional_data": [
{ "name": "order_id", "value": "12345" }
]
}
| Field | Type | Required | Description |
|---|---|---|---|
value | integer | Yes | Payment amount in cents (e.g. 1500 = R$ 15.00). Must be greater than zero |
receiver_name | string | Yes | Receiver's name |
receiver_cpf | string | Yes | Receiver's CPF |
receiver_email | string | Yes | Receiver's email |
pix_key | string | Yes | Destination Pix key |
pix_key_type | string | Yes | Pix key type (e.g. CPF, CNPJ, EMAIL, PHONE, EVP/random) |
description | string | Yes | Payment description/memo |
additional_data | array | No | List of name/value pairs (free-form metadata). See rules below |
additional_data rules
- Each item must have non-empty
nameandvalue(aftertrim). - The serialized JSON of the whole array cannot exceed 2048 bytes.
Responses
201 Created — payment accepted for processing:
{ "id": "b3f1c2d4-..." }
400 Bad Request — validation failed (missing required field, invalid
additional_data, missing Channel-Id, or the request was rejected):
{ "message": "Todos os campos são obrigatórios" }
or, when the rejection is associated with an already registered transaction:
{ "id": "b3f1c2d4-...", "message": "<rejection reason>" }
Notes
- All fields in the body (except
additional_data) are required.