<YOUR_KEY> por la clave de uno de tus endpoints
y TXYZ… por una dirección real. Los WU de los comentarios son lo que Node API cobra exactamente por
estas llamadas.
Conectar
La primera llamada lee los datos de la cuenta — 1 WU..proto de TRON y recibe las direcciones como bytes en base64 — consulta
gRPC.
Enviar USDT
Construye la transacción a través del nodo, fírmala de tu lado y transmítela a través del nodo. Tu clave privada nunca sale de tu servidor. Una transferencia cuesta 2 WU; con tronpy, 3 WU, más 2 WU una sola vez para cargar el contrato. En estos ejemplos,from (sender) y to son las direcciones del remitente y del destinatario,
amount está en la unidad mínima del token (USDT tiene 6 decimales: 1 USDT = 1000000) y
PRIVATE_KEY es la clave privada del remitente. fee_limit es el máximo de TRX, en sun, que la
transferencia puede quemar: 30000000 son 30 TRX.
parameter son los argumentos de transfer(address,uint256) codificados en ABI, en hex:
la dirección de 20 bytes del destinatario (su forma hex sin el 41 inicial) rellenada con ceros a la
izquierda hasta 64 caracteres hex, y después el importe, también rellenado hasta 64. El nodo responde
con una transaction sin firmar y su txID. Firma txID con la clave privada del remitente, añade la
firma a la transacción como "signature": ["<hex>"] y envía ese objeto de transacción como
signed.json.
Con grpcurl, call.json es un mensaje TriggerSmartContract: owner_address, contract_address
y data (el selector de función de 4 bytes seguido de los argumentos codificados en ABI), todos como
bytes en base64. El mensaje no tiene campo de límite de comisión: fija raw_data.fee_limit en la
transacción devuelta y luego firma el SHA-256 del nuevo raw_data — el txid devuelto deja de
coincidir tras ese cambio. Consulta gRPC.
Seguir transferencias USDT
Lee el encabezado del bloque más reciente, luego los recibos de ese bloque, y quédate con los de USDT. El encabezado cuesta 1 WU y los recibos de un bloque reciente 2 WU — 3 WU por bloque. Seguir así cada bloque de la cadena supone unos 2.6M WU al mes.Transfer del token en log. En un evento,
topics[0] es ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef, topics[1] y
topics[2] son el remitente y el destinatario (los últimos 40 caracteres hex son la dirección sin su
prefijo 41) y data es el importe. receipt.result es SUCCESS en una transferencia que se
completó. El filtro de arriba conserva las llamadas directas al contrato USDT; para captar también los
USDT que mueven otros contratos, comprueba en su lugar la address de cada entrada del log —
a614f803b6fd780986a42c78ec9c7f77e6ded13c para USDT.
Llega un bloque nuevo aproximadamente cada 3 segundos. Recuerda el último bloque que procesaste y pide
los recibos de cada número posterior, para que un sondeo lento nunca se salte un bloque. Los recibos de
un bloque a más de 20 por debajo de la cabeza ya no son recientes y se cobran según su tamaño —
consulta Unidades de cuota.