Skip to main content
GET
/
transactions
/
{id}
Obtener transacción
curl --request GET \
  --url http://api.gu1.ai/transactions/{id} \
  --header 'Authorization: Bearer <token>'
{
  "transaction": {},
  "baseCurrency": "<string>"
}

Resumen

Devuelve una transacción de tu organización. La respuesta usa objetos anidados origin y destination (con datos de entidad resueltos cuando existen). Esto difiere de Crear transacción, donde el cuerpo usa originDetails / destinationDetails más planos. En la lectura no se ejecuta el motor de reglas: la respuesta no incluye rulesExecutionSummary.

Endpoints

MétodoEndpointCuándo usarlo
Por IDGET /transactions/{id}Tienes el UUID de la transacción en gu1
Por external IDGET /transactions/external/{externalId}Solo tienes tu externalId del alta
Ambos devuelven la misma forma: { "transaction": { ... }, "baseCurrency": "..." }.

Por ID

GET http://api.gu1.ai/transactions/{id}
id
string
required
UUID de la transacción en gu1 (el mismo que transaction.id al crear).

Por external ID

GET http://api.gu1.ai/transactions/external/{externalId}
externalId
string
required
El externalId que enviaste al crear la transacción.

Autenticación

Requiere API key válida y permiso de lectura de transacciones (transactions:read):
Authorization: Bearer YOUR_API_KEY
La transacción debe pertenecer a la organización de la clave; si no, la API responde 404.

Respuesta (200 OK)

transaction
object
Registro completo de la transacción.
  • id (string) — UUID en gu1
  • externalId (string) — tu identificador externo
  • type, status — enums (misma semántica que en crear)
  • amount (number), currency (string)
  • amountInUsd (number | null)
  • currenciesExchange (array) — entradas { currency, exchangeRate, value }
  • paymentMethod (string | null)
  • origin (object) — entityId, externalId, name, country, type (person | company | null), taxId, riskScore, details (objeto; incluye lo que guardaste, p. ej. payment details)
  • destination (object) — misma estructura que origin
  • riskScore (number | null)
  • lastRiskEvaluationAt (string | null) — ISO del último audit de análisis de riesgo (presente en GET por UUID; no se incluye al consultar por external ID)
  • riskFactors (array)
  • activeMatchesCount, shadowMatchesCount (number, opcional)
  • hitRuleExternalIds (string[], opcional)
  • flagged (boolean)
  • locationDetails, deviceDetails (object)
  • channel (string | null), description, category, metadata (object)
  • transactedAt, createdAt, updatedAt (ISO)
  • exchangeRate, rateSource, rateTimestamp, convertedAt — metadatos de conversión si aplica
baseCurrency
string
Moneda base de la organización (código ISO, p. ej. USD).

Ejemplo (por ID)

curl -s http://api.gu1.ai/transactions/550e8400-e29b-41d4-a716-446655440000 \
  -H "Authorization: Bearer YOUR_API_KEY"
{
  "transaction": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "externalId": "txn_12345",
    "type": "PAYMENT",
    "status": "CREATED",
    "amount": 150.5,
    "currency": "USD",
    "amountInUsd": 150.5,
    "currenciesExchange": [],
    "paymentMethod": "CARD",
    "origin": {
      "entityId": "…",
      "externalId": "customer_001",
      "name": "Jane Doe",
      "country": "US",
      "type": "person",
      "taxId": null,
      "riskScore": 12.5,
      "details": {}
    },
    "destination": {
      "entityId": "…",
      "externalId": "merchant_456",
      "name": "Acme Store",
      "country": "US",
      "type": "company",
      "taxId": null,
      "riskScore": 8,
      "details": {}
    },
    "riskScore": 15,
    "lastRiskEvaluationAt": "2025-01-15T10:00:00.000Z",
    "riskFactors": [],
    "flagged": false,
    "locationDetails": {},
    "deviceDetails": {},
    "channel": "web_browser",
    "description": "Compra online",
    "category": "retail",
    "metadata": {},
    "transactedAt": "2025-01-15T09:55:00.000Z",
    "createdAt": "2025-01-15T09:55:01.000Z",
    "updatedAt": "2025-01-15T09:55:01.000Z",
    "exchangeRate": null,
    "rateSource": null,
    "rateTimestamp": null,
    "convertedAt": null
  },
  "baseCurrency": "USD"
}

Errores

404 — No encontrada

{
  "error": "Transaction not found"
}

500 — Error del servidor

{
  "error": "Failed to fetch transaction",
  "details": "…"
}

Ver también