Skip to content

Consultar Cash-Out por E2E ID

Consulta una transaccion PIX por el End-to-End ID, el identificador unico atribuido por el BACEN en el Sistema de Pagos Instantaneos (SPI).

Endpoint

GET /api/external/transactions/e2e/:e2e_id

Headers

HeaderTipoObligatorioDescripcion
AuthorizationStringSiApiKey {client_id}:{client_secret}

Path Parameters

ParametroTipoObligatorioDescripcion
e2e_idStringSiEnd-to-End ID (formato: E{ISPB}{YYYYMMDDHHmm}{secuencial})

Formato del E2E ID

El End-to-End ID sigue el estandar BACEN: E + ISPB (8 digitos) + fecha/hora (12 digitos) + secuencial. Ejemplo: E37839059202603091530abcdef01. El ISPB 37839059 identifica a Owem Pay.

Ejemplo

bash
curl -X GET https://api.owem.com.br/api/external/transactions/e2e/E37839059202603091530abcdef01 \
  -H "Authorization: ApiKey $CLIENT_ID:$CLIENT_SECRET"

Respuesta de Exito -- 200

Para una transaccion liquidada (tabla transactions):

json
{
  "worked": true,
  "data": {
    "id": "c7f3a8b12d4e4f6a9c1b3e5f7a9b1d3e",
    "transaction_id": "PIXOUT20260309a1b2c3d4e5f6",
    "end_to_end_id": "E37839059202603091530abcdef01",
    "external_id": "order-9876",
    "type": "pix",
    "direction": "outbound",
    "status": "settled",
    "amount": 300000,
    "fee_amount": 350,
    "net_amount": 300350,
    "description": "Pagamento fornecedor",
    "counterparty_name": "Joao Silva",
    "recipient_key": "12345678901",
    "payer_document": "37839059000188",
    "recipient_document": "12345678901",
    "payer_ispb": "37839059",
    "payer_bank_name": "Owem Pay",
    "created_at": "2026-03-09T15:30:00Z",
    "completed_at": "2026-03-09T15:30:02Z"
  }
}

El endpoint GET /transactions/e2e/:e2e_id busca en 3 fuentes en el siguiente orden: (1) transactions liquidadas; (2) outbound_requests en curso (PIX OUT aun procesando); (3) failed_transactions rechazadas. No busca en qrcodes — para localizar QRs use GET /transactions/:id con el tx_id del QR, o GET /transactions/ref/:external_id con el external_id que usted atribuyo en la creacion.

La estructura de la respuesta varia conforme a la fuente encontrada — hay 3 shapes distintos:

  • Transaccion liquidada (transactions via Helpers.format_external_transaction/1): shape del ejemplo arriba, con status: "settled". 18 campos (incluyendo payer_document, recipient_document, payer_ispb, payer_bank_name, counterparty_name). Mismo shape retornado por GET /transactions/tag/:tag.
  • PIX OUT en curso (outbound_requests): shape reducido, con status: "processing". Campos: status, transaction_id, end_to_end_id, amount, fee_amount, net_amount, external_id, pix_key, description, type, direction: "outbound", payment_status: "processing", started_at, recipient: {name, key, key_type}. No incluye payer_document, payer_ispb ni completed_at.
  • Transaccion rechazada (failed_transactions): shape de falla, con status: "failed". Agrega reason_code (uppercase BACEN o lowercase provider), reason_description (en ingles), failure_reason (string bruta), failed_at, y recipient: {name, key} simplificado.

Vea cada shape completo y los valores posibles del campo status en Consultar Cash-Out por ID -- Valores del campo status. El campo status no tiene vocabulario unico entre fuentesoutbound_requests retorna "processing" mientras transactions con status interno 2 retorna "pending".

Parser defensivo

Siempre enrute el parser por data.status antes de intentar leer campos especificos:

javascript
switch (data.status) {
  case "settled":    // transacciones liquidadas — 18 campos
  case "processing": // PIX OUT en curso — sin payer_* ni completed_at
  case "failed":     // rechazada — con reason_code / reason_description
  case "pending":    // raro — transactions.status interno 2
}

Todos los valores monetarios en unidades base (÷ 10.000 para reales). Campos payer_document, recipient_document, payer_ispb y payer_bank_name aparecen solo en el shape "settled" — son resueltos a partir del metadata de la transaccion y pueden ser null en rows antiguas o cuando la contraparte no envio los datos.

Respuesta de Error -- 404

json
{
  "worked": false,
  "detail": "Transacao nao encontrada para E2E ID: E37839059202603091530abcdef01"
}

Owem Pay Instituição de Pagamento — ISPB 37839059