docs

Listar MEDs

GET /api/med

GET https://api.fypay.me/api/med

Devuelve la lista de MEDs asociados a la cuenta autenticada, con paginación y filtros.

Autenticación

Requiere un Bearer token en el header Authorization.

Query Parameters

ParámetroTipoRequeridoDescripción
statusstringNoFiltrar por estado: OPEN, RECEIVED, CANCELLED, ANALYZED (CANCELED se acepta como alias de CANCELLED)
isReconciledbooleanNoFiltrar por estado de conciliación (true/false)
startDatestringNoFecha de inicio (ISO 8601). Ej: 2026-01-01T00:00:00.000Z
endDatestringNoFecha de fin (ISO 8601). Ej: 2026-01-31T23:59:59.999Z
pagenumberNoNúmero de página (comienza en 1). Valor por defecto: 1
pageSizenumberNoÍtems por página (1–100). Valor por defecto: 20

Ejemplos de Solicitud

curl -X GET "https://api.fypay.me/api/med" \
  -H "Authorization: Bearer $FYPAY_TOKEN"

Listar solo los MEDs con estado RECEIVED (en análisis):

curl -X GET "https://api.fypay.me/api/med?status=RECEIVED" \
  -H "Authorization: Bearer $FYPAY_TOKEN"

Listar MEDs creados en enero de 2026, página 1 con 50 ítems:

curl -X GET "https://api.fypay.me/api/med?startDate=2026-01-01T00:00:00.000Z&endDate=2026-01-31T23:59:59.999Z&page=1&pageSize=50" \
  -H "Authorization: Bearer $FYPAY_TOKEN"

Listar MEDs no vinculados automáticamente a una transacción local:

curl -X GET "https://api.fypay.me/api/med?isReconciled=false" \
  -H "Authorization: Bearer $FYPAY_TOKEN"

Respuesta (200)

CampoTipoDescripción
dataarrayLista de objetos MED
data[].idnumberIdentificador único del MED
data[].endToEndstringEnd-to-end ID de la transacción PIX original
data[].statusstringEstado: OPEN, RECEIVED, CANCELLED, ANALYZED
data[].reasonstringMotivo: REFUND_REQUEST o REFUND_CANCELLATION
data[].causestring | nullCódigo de causa (UNAUTHORIZED_TRANSACTION, SOCIAL_ENGINEERING, etc.) o null
data[].descriptionstring | nullDetalles adicionales sobre la solicitud
data[].analysisResultstring | nullResultado del análisis: APPROVED, REJECTED (null si aún está en análisis)
data[].analysisDetailsstring | nullJustificación del resultado del análisis
data[].requestingBankobjectBanco que abrió el MED
data[].requestingBank.ispbstringCódigo ISPB del banco
data[].requestingBank.namestringNombre del banco
data[].contestedBankobjectBanco contestado (su institución)
data[].contestedBank.ispbstringCódigo ISPB del banco
data[].contestedBank.namestringNombre del banco
data[].originalTransactionobject | nullDatos de la transacción PIX original
data[].originalTransaction.amountnumberMonto en BRL
data[].originalTransaction.typestringTipo (ej: "PIX")
data[].originalTransaction.transactionTypestringTipo de transacción (ej: "CASH_IN")
data[].originalTransaction.namestringNombre de la contraparte
data[].originalTransaction.documentstringDocumento de la contraparte (enmascarado)
data[].originalTransaction.dateTimestringFecha/hora de la transacción original (ISO 8601)
data[].isReconciledbooleanIndica si el MED fue vinculado a una transacción local
data[].originalTransactionIdnumber | nullID de la transacción local (si está conciliada)
data[].createdAtstringFecha de creación del MED (ISO 8601)
data[].updatedAtstringFecha de la última actualización (ISO 8601)
metadataobjectInformación de paginación
metadata.totalnumberTotal de registros
metadata.pagenumberPágina actual
metadata.pageSizenumberÍtems por página
metadata.totalPagesnumberTotal de páginas
{
  "data": [
    {
      "id": 42,
      "endToEnd": "E12345678202604101030abcdef123456",
      "status": "ANALYZED",
      "reason": "REFUND_REQUEST",
      "cause": "UNAUTHORIZED_TRANSACTION",
      "description": "Customer claims not to have performed the transaction",
      "analysisResult": "APPROVED",
      "analysisDetails": "Refund approved by operator - amount refunded",
      "requestingBank": {
        "ispb": "00000000",
        "name": "BCO DO BRASIL S.A."
      },
      "contestedBank": {
        "ispb": "13140088",
        "name": "ACESSO SOLUÇÕES DE PAGAMENTO"
      },
      "originalTransaction": {
        "amount": 1500.00,
        "type": "PIX",
        "transactionType": "CASH_IN",
        "name": "João da Silva",
        "document": "***456789**",
        "dateTime": "2026-04-05T14:30:00.000Z"
      },
      "isReconciled": true,
      "originalTransactionId": 78432,
      "createdAt": "2026-04-10T10:00:00.000Z",
      "updatedAt": "2026-04-12T15:30:00.000Z"
    }
  ],
  "metadata": {
    "total": 1,
    "page": 1,
    "pageSize": 20,
    "totalPages": 1
  }
}

Errores

StatusDescripción
400Parámetros inválidos (PUB_REQUEST_BODY_INVALID): status fuera del enum, page < 1, pageSize fuera del rango 1–100 o parámetro desconocido. Los parámetros con problemas vienen en details.violations
401Token ausente o inválido
500Error interno al consultar MEDs

Ejemplo de error 400:

{
  "statusCode": 400,
  "timestamp": "2026-04-10T15:30:00.000Z",
  "path": "/api/med?status=PENDING",
  "method": "GET",
  "code": "PUB_REQUEST_BODY_INVALID",
  "message": "Request body validation failed: status: status must be one of the following values: OPEN, RECEIVED, CANCELLED, CANCELED, ANALYZED",
  "userMessage": "Request body is invalid.",
  "errorId": "31b5dc36b86c598e51a2a5389a37060d",
  "details": {
    "violations": {
      "status": "status must be one of the following values: OPEN, RECEIVED, CANCELLED, CANCELED, ANALYZED"
    }
  }
}

Ejemplo de error 401:

{
  "statusCode": 401,
  "timestamp": "2026-04-10T15:30:00.000Z",
  "path": "/api/med",
  "method": "GET",
  "code": "HTTP_ERROR",
  "message": "Token Bearer não fornecido",
  "userMessage": "Acesso não autorizado. Faça login novamente.",
  "errorId": "a9f3e2b1c4d5678e90123456abcdef01",
  "error": "Unauthorized"
}

Para entender el ciclo de vida de los estados y causas, consulte la visión general del MED.

En esta página