Saltar al contenido principal

Verificaciones de transacción

Una verificación de transacción criba una transacción desde el punto de vista de su cliente: el dinero que recibió en un depósito o el dinero que envía en un retiro. Usa el mismo endpoint, el mismo scope (checks:write) y el mismo veredicto que una verificación de dirección, así que consulte esa página para ver cada campo de la respuesta.

Solicitud​

CampoObligatorioDescripción
subjectsí"transaction".
assetsíUn símbolo de activo tal como figura en Activos admitidos.
tx_hashsíEl hash de la transacción, de 160 caracteres como máximo. Su forma debe ser válida para el activo.
directionsí"deposit" cuando su cliente recibe los fondos, "withdrawal" cuando los envía.
addressa vecesLa dirección de su cliente en la transacción, de 160 caracteres como máximo. Vea la sección siguiente.

Los campos desconocidos se rechazan. Como en toda verificación, envíe un Idempotency-Key para que un reintento no pueda verificar ni cobrar dos veces; vea Idempotencia.

La dirección del cliente​

address es la dirección de su cliente en la transacción: el destinatario de un depósito, el remitente de un retiro.

  • En TRX, ETH, BNB y BASE puede omitirla. La API lee la transacción y usa el destinatario para un deposit y el remitente para un withdrawal. La cuota, el saldo y la capacidad se comprueban primero, de modo que una cuenta rechazada no provoca ninguna consulta.
  • En cualquier otro activo es obligatoria, y una solicitud sin ella responde 422 ADDRESS_REQUIRED. Activos admitidos muestra los activos que pueden derivarla.
  • Las claves sandbox siempre la necesitan. Una verificación de transacción con una clave sandbox sin address también responde ADDRESS_REQUIRED; vea Sandbox y live.
  • Si la envía, se usa tal cual. No se deriva nada.

El veredicto fija la dirección que se usó: el campo address de la respuesta, el informe de evidencias y una reproducción (rederive) la llevan, tanto si la envió usted como si la derivó la API. Compare el campo address con sus propios registros si depende del valor derivado.

Cuando se omite la dirección y no se puede leer la transacción, la solicitud responde 422 TRANSACTION_UNRESOLVED. Ocurre cuando el hash no existe en esa red, cuando no se puede decodificar el destinatario de un depósito o cuando la fuente de datos de la cadena no respondió a tiempo. No se acepta nada y no se cobra nada. Revise el hash y la red, reintente o envíe usted la dirección.

Ejemplos​

Un depósito en TRON con la dirección omitida y un retiro en Ethereum con la dirección indicada.

# TRON deposit, address derived from the transaction
curl -s -X POST https://api.leeri.ai/v1/checks \
-H "Authorization: Bearer $LEERI_API_KEY" \
-H "Idempotency-Key: deposit-2291" \
-H "Content-Type: application/json" \
-d '{"subject":"transaction","asset":"TRX","tx_hash":"'"$TX_HASH"'","direction":"deposit"}'

# Ethereum withdrawal, address supplied
curl -s -X POST https://api.leeri.ai/v1/checks \
-H "Authorization: Bearer $LEERI_API_KEY" \
-H "Idempotency-Key: payout-5530" \
-H "Content-Type: application/json" \
-d '{"subject":"transaction","asset":"ETH","tx_hash":"'"$ETH_TX_HASH"'","direction":"withdrawal","address":"'"$ADDRESS"'"}'

Qué añade la respuesta​

La respuesta es el mismo CheckView que devuelve una verificación de dirección, de modo que status puede ser completed o pending; vea Pending y sondeo. En una verificación de transacción se rellenan estos campos:

CampoSignificado
subjecttransaction.
tx_hashLa transacción que se verificó.
directiondeposit o withdrawal, tal como la envió.
addressLa dirección del cliente que se usó, enviada o derivada.
amountEl importe de la transacción como cadena decimal, nunca un número de coma flotante. null cuando no se conoce.
risky_volume_usdEl valor en USD del flujo de la transacción vinculado a contrapartes de riesgo, como cadena decimal. null hasta que la verificación termina.

Verificar una dirección por la que ya se le cobró en la misma cadena en los últimos 7 días es gratis, también cuando la verifica como transacción; vea Límites de solicitudes y cuotas.

Errores​

Todo lo de Verificaciones de dirección es aplicable, además de:

EstadoCódigoCuándo
422ADDRESS_REQUIREDaddress omitida para un activo que no puede derivarla, o con una clave sandbox.
422TRANSACTION_UNRESOLVEDaddress omitida y no se pudo leer la transacción. Nunca se cobra.
400VALIDATION_ERRORUn tx_hash, direction o address con forma no válida, o un campo desconocido.

Los elementos de un lote siempre envían address, porque un lote se acepta sin leer ninguna cadena.