Skip to content

Détails MED

Consultez les détails complets d'un processus MED (Mécanisme Spécial de Restitution) spécifique.

Endpoint

GET /api/external/med/:id

Headers

HeaderTypeObligatoireDescription
AuthorizationStringOuiApiKey {client_id}:{client_secret}
X-Key-CaseStringNonDéfinissez à camelCase pour recevoir les champs de la réponse en camelCase (par défaut snake_case)

Path Parameters

ParamètreTypeObligatoireDescription
idStringOuiIdentifiant du processus MED

Exemple

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

Réponse de succès (200)

json
{
  "worked": true,
  "med": {
    "id": "MED20260307001",
    "type": "REFUND_REQUEST",
    "status": "ACKNOWLEDGED",
    "amount": 50000,
    "original_end_to_end_id": "E37839059202603071530000001",
    "reason": "Fraude signalée par le payeur",
    "created_at": "2026-03-07T18:00:00Z"
  }
}

Status en UPPERCASE

Valeurs possibles : ACKNOWLEDGED, CLOSED, CANCELLED. Transmises telles que reçues du provider PIX (OnZ/BACEN) — sans normalisation. Voir med-list pour les détails.

ChampTypeDescription
workedBooleantrue indique le succès de l'opération
med.idStringIdentifiant unique du MED
med.typeStringType : REFUND_REQUEST ou REFUND_CANCELLED
med.statusStringStatus actuel du processus (ACKNOWLEDGED, CLOSED, CANCELLED)
med.amountIntegerValeur en unités de base (÷ 10 000 pour reais). 50000 = R$ 5,00
med.original_end_to_end_idStringE2E de la transaction PIX originale. Utilisez pour croiser avec GET /transactions/ref/:external_id
med.reasonStringMotif indiqué par le demandeur (texte libre). null si non disponible
med.created_atStringDate d'ouverture (ISO 8601 UTC)

Champs additionnels non exposés via External API

Le provider OnZ/BACEN retourne plus de champs que ceux exposés par cet endpoint. Les champs filtrés délibérément dans le serializer incluent :

Champ (OnZ)DescriptionOù l'obtenir aujourd'hui
analysisResultDécision finale : AGREED ou DISAGREEDWebhook pix.infraction.resolved
analysisDetailsJustification de la décisionWebhook pix.infraction.resolved
infractionTypeREFUND_REQUEST ou REFUND_CANCELLEDDéjà exposé dans med.type
fraudTypeSCAM, ACCOUNT_TAKEOVER, COERCION, FRAUDULENT_ACCESS, OTHERWebhook pix.refund.requested (champ fraud_category)
situationTypeType de situation impliquée (taxonomie BACEN)Merchant portal (/compliance) — non disponible via External API
defenseDeadlineDélai BACEN pour soumission de défenseWebhook pix.infraction.created

Cette omission est délibérée (gap connu). Si vous devez consommer ces champs programmatiquement, contactez compliance@owem.com.br — ou utilisez les webhooks listés, qui apportent toujours les champs pertinents au moment de l'événement.

Voir Infractions (flux complet) pour comprendre la relation entre MED et Infractions.

Valeur en subcentavos, pas en BRL

Le champ amount est en subcentavos (1 BRL = 10 000 subcentavos). Valeur 50000 = R$ 5,00 — pas R$ 50 000. Ne multipliez jamais par 100 ni n'utilisez de float.

Réponse d'erreur (404)

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

404 peut indiquer une erreur transitoire

Si le MED existe dans un autre canal (webhook, listing précédent) mais retourne 404 dans cette consultation, il peut s'agir d'une défaillance transitoire du provider OnZ. Réessayez dans quelques secondes. Si cela persiste après 5 min, contactez le support.

Le backend convertit toutes les erreurs du provider (y compris timeouts et erreurs réseau) en HTTP 404 avec detail: "MED nao encontrado". Pour distinguer « n'existe pas » de « défaillance transitoire », consultez d'abord l'endpoint Liste MED — si l'ID apparaît dans la liste mais le detail retourne 404, c'est transitoire.

Réponse d'erreur (401)

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

Suivi en temps réel (webhooks)

Les événements webhook pix.refund.requested et pix.refund.completed SONT déclenchés automatiquement par le backend depuis avril/2026. Il est recommandé de s'abonner à ces webhooks pour ne pas dépendre du polling. Le polling sur GET /med/:id ou GET /med continue à fonctionner comme alternative.

Owem Pay Instituição de Pagamento — ISPB 37839059