Skip to content

Transaction Inspector — Full Stellar Ledger Lookup & Decode #1

Description

@dotunv

Overview

The /inspector page in the web app is a shell. This tool should let developers paste a transaction hash, Stellar address, or ledger sequence and get a fully decoded, human-readable breakdown — essential for debugging CrowdPay and Fluxa integrations.

What needs to be built

NestJS API — apps/api/src/modules/transaction/transaction.service.ts

  • lookupTransaction(hash: string, network: 'testnet' | 'mainnet') — fetch from Horizon, return decoded operation list, memo (text/hash/id), fee, ledger, timestamp
  • lookupAccount(address: string, network) — balances per asset, sequence number, signers, recent transactions (last 20)
  • XDR decode: if raw XDR is pasted, decode to human-readable using @stellar/stellar-sdk
  • Controller route: GET /transaction/:hash, GET /account/:address, POST /xdr/decode

Next.js web — apps/web/src/app/inspector/page.tsx

  • Input accepts: transaction hash, Stellar address (G...), or raw XDR
  • Auto-detect input type and route to correct lookup
  • Display: operation type, source/destination, asset, amount, memo, fee paid, ledger close time
  • Testnet / Mainnet toggle
  • Link to Stellar Expert for each transaction
  • Copy button on each field

Acceptance criteria

  • Pasting a valid testnet tx hash shows all operations decoded
  • Pasting a G... address shows balances and last 20 transactions
  • Pasting raw XDR decodes it without hitting Horizon
  • Invalid hash shows a clear error (not a blank screen)
  • Testnet and mainnet toggle works correctly

Metadata

Metadata

Assignees

Labels

GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardOfficial CampaignCampaign: Official Campaign

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions