Skip to content

Detalles MED

Consulta los detalles completos de un proceso MED (Mecanismo Especial de Devolucion) especifico.

Endpoint

GET /api/external/med/:id

Headers

HeaderTipoObligatorioDescripcion
AuthorizationStringSiApiKey {client_id}:{client_secret}
X-Key-CaseStringNoDefina como camelCase para recibir los campos de la respuesta en camelCase (default es snake_case)

Path Parameters

ParametroTipoObligatorioDescripcion
idStringSiIdentificador del proceso MED

Ejemplo

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

Respuesta de Exito (200)

json
{
  "worked": true,
  "med": {
    "id": "MED20260307001",
    "type": "REFUND_REQUEST",
    "status": "ACKNOWLEDGED",
    "amount": 50000,
    "original_end_to_end_id": "E37839059202603071530000001",
    "reason": "Fraude reportada pelo pagador",
    "created_at": "2026-03-07T18:00:00Z"
  }
}

Status en UPPERCASE

Valores posibles: ACKNOWLEDGED, CLOSED, CANCELLED. Repasados tal como recibidos del provider PIX (OnZ/BACEN) — sin normalizacion. Ver med-list para detalles.

CampoTipoDescripcion
workedBooleantrue indica exito en la operacion
med.idStringIdentificador unico del MED
med.typeStringTipo: REFUND_REQUEST o REFUND_CANCELLED
med.statusStringStatus actual del proceso (ACKNOWLEDGED, CLOSED, CANCELLED)
med.amountIntegerValor en unidades base (÷ 10.000 para reales). 50000 = R$ 5,00
med.original_end_to_end_idStringE2E de la transaccion PIX original. Use para cruzar con GET /transactions/ref/:external_id
med.reasonStringMotivo informado por el solicitante (texto libre). null si no disponible
med.created_atStringFecha de apertura (ISO 8601 UTC)

Campos adicionales no expuestos via External API

El proveedor OnZ/BACEN retorna mas campos que los expuestos por este endpoint. Los campos filtrados deliberadamente en el serializer incluyen:

Campo (OnZ)DescripcionDonde obtener hoy
analysisResultDecision final: AGREED o DISAGREEDWebhook pix.infraction.resolved
analysisDetailsJustificativa de la decisionWebhook pix.infraction.resolved
infractionTypeREFUND_REQUEST o REFUND_CANCELLEDYa expuesto en med.type
fraudTypeSCAM, ACCOUNT_TAKEOVER, COERCION, FRAUDULENT_ACCESS, OTHERWebhook pix.refund.requested (campo fraud_category)
situationTypeTipo de situacion involucrada (BACEN taxonomy)Merchant portal (/compliance) — no disponible via External API
defenseDeadlinePlazo BACEN para envio de defensaWebhook pix.infraction.created

Esta omision es deliberada (gap conocido). Si usted necesita consumir esos campos programaticamente, contacte compliance@owem.com.br — o use los webhooks listados, que siempre traen los campos relevantes en el momento del evento.

Ver Infracciones (flujo completo) para entender la relacion entre MED e Infracciones.

Valor en subcentavos, no en BRL

El campo amount es en subcentavos (1 BRL = 10.000 subcentavos). Valor 50000 = R$ 5,00 — no R$ 50.000. Nunca multiplique por 100 ni use float.

Respuesta de Error (404)

json
{
  "worked": false,
  "errors": {
    "not_found": "MED não encontrado"
  }
}

404 puede indicar error transitorio

Si el MED existe en otro canal (webhook, listado anterior) pero retorna 404 en esta consulta, puede ser falla transitoria del proveedor OnZ. Intente nuevamente en algunos segundos. Si persiste despues de 5 min, contacte al soporte.

El backend convierte todos los errores del proveedor (incluyendo timeouts y errores de red) en HTTP 404 con detail: "MED nao encontrado". Para distinguir "no existe" de "falla transitoria", consulte primero el endpoint Listar MED — si el ID aparece en el listado pero el detail retorna 404, es transitorio.

Respuesta de Error (401)

json
{
  "worked": false,
  "errors": {
    "unauthorized": "Missing API key credentials. Use Authorization: ApiKey <client_id>:<client_secret>"
  }
}

Acompanamiento en tiempo real (webhooks)

Los eventos de webhook pix.refund.requested y pix.refund.completed SON disparados automaticamente por el backend a partir de abril/2026. Recomendado suscribir esos webhooks para no depender de polling. Polling en GET /med/:id o GET /med continua funcionando como alternativa.

Owem Pay Instituição de Pagamento — ISPB 37839059