wallet-cli tx status¶
查看交易的确认状态。
用法¶
wallet-cli tx status --txid <id> [options]
说明¶
通过四种状态报告交易进度,TRON 与 EVM 网络都适用。发送后,脚本和智能体可以轮询该命令,判断交易是否已经入块及执行成功。
这四个状态值属于稳定接口,在兼容版本中不会改名或删除,因此程序可以直接据此分支处理(参见
machine-interface 中的 wallet-cli.result.v1 输出规范)。
data.state |
含义 | 是否终态? |
|---|---|---|
confirmed |
已入块,且能拿到执行结果 / 回执;带有 blockNumber |
是 |
failed |
已入块但被 revert / 拒绝 | 是 |
pending |
节点已看到,但尚无执行结果 / 回执 | 否——继续轮询 |
not_found |
所查询的端点不认识它(网络选错、尚未传播、被丢弃或已被裁剪);结果未知 | 否——继续轮询并对账;不要臆断为失败 |
confirmed表示的是「已入块且已拿到回执」,而不是最终性保证。如果你的流程需要最终性,请另行核验——TRON 上查 SolidityNode 视图,EVM 上做 finalized 区块检查。轮询到截止时间仍停在
pending或not_found,结果依然是未知。不要把它记录为失败,也不要用它作为自动重发的触发条件;请先按目标网络和端点核对该 txid。
选项¶
| 选项 | 说明 |
|---|---|
--txid <string> |
必填。 交易 id / 哈希——TRON 上是不带前缀的 hex,EVM 上是 0x… |
此外还有全局选项。
示例¶
wallet-cli tx status --txid 1789b6e3d420d84f21013fa4e18ecd2c60df1accb7101fd71c2511b75835c0cd --network nile
TxID 1789b6e3d420d84f21013fa4e18ecd2c60df1accb7101fd71c2511b75835c0cd
Status confirmed ✅
Block #70,604,611
Confirmations 19
{"schema":"wallet-cli.result.v1","success":true,"command":"tx.status","data":{"txid":"1789b6e3d420d84f21013fa4e18ecd2c60df1accb7101fd71c2511b75835c0cd","state":"confirmed","confirmed":true,"failed":false,"blockNumber":70604611,"confirmations":19},"meta":{"durationMs":1817,"warnings":[]},"chain":{"family":"tron","network":"tron:3448148188","chainId":"3448148188"}}
同一个查询在 EVM 网络上,用 0x 哈希:
wallet-cli tx status --txid 0x55b0068ef31bce39bbf5b06d456eaef307fd77f96d85ea291f48c1ae4b900d80 --network sepolia -o json
{"schema":"wallet-cli.result.v1","success":true,"command":"tx.status","data":{"txid":"0x55b0068ef31bce39bbf5b06d456eaef307fd77f96d85ea291f48c1ae4b900d80","state":"confirmed","confirmed":true,"failed":false,"blockNumber":11576586,"confirmations":0},"meta":{"durationMs":408,"warnings":[]},"chain":{"family":"evm","network":"eip155:11155111","chainId":"11155111"}}
未知的 txid 会返回成功,state: "not_found"(退出码 0)——查询本身是成功的,答案是「不存在」:
{"schema":"wallet-cli.result.v1","success":true,"command":"tx.status","data":{"txid":"0000…0000","state":"not_found","confirmed":false,"failed":false},"meta":{"durationMs":1022,"warnings":[]},"chain":{"family":"tron","network":"tron:3448148188","chainId":"3448148188"}}
在 EVM 上,not_found 还会带一条 meta.warnings,因为一个裁剪过历史的公共端点,和一个从未存在过的哈希,是无法区分的:
{"…":"…","data":{"txid":"0x0000…0000","state":"not_found","confirmed":false,"failed":false},"meta":{"durationMs":407,"warnings":["0x0000…0000 is unknown to this endpoint. Public nodes often prune history, so this may mean the node has no record of it rather than that it never existed; try an archival endpoint."]},"chain":{"family":"evm","network":"eip155:11155111","chainId":"11155111"}}
输出¶
| 字段 | 类型 | 含义 |
|---|---|---|
txid |
string | 回显所查询的 id |
state |
string | confirmed / failed / pending / not_found |
confirmed / failed |
boolean | 与 state 对应的布尔值,便于直接分支判断 |
blockNumber |
number | 状态为已确认时才有 |
confirmations |
number | 在所在区块之上又叠加了多少个块;已确认时才有 |
退出码¶
0 查询已作答(包括 not_found) · 1 执行失败(节点不可达、超时) · 2 用法错误。
另请参见¶
tx info——完整详情和交易回执 · tx send · 脚本安全