Skip to main content
POST
/
95e61622bf6a8af293978377718e3b77
/
wallet
/
scanshieldedtrc20notesbyovk
wallet/scanshieldedtrc20notesbyovk
curl --request POST \
  --url https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/scanshieldedtrc20notesbyovk \
  --header 'Content-Type: application/json' \
  --data '{
  "start_block_index": 10000000,
  "end_block_index": 10000001,
  "ovk": "0ff58efd75e083fe4fd759c8701e1c8cb6961c4297a12b2c800bdb7b2bcab889",
  "shielded_TRC20_contract_address": "41274fc7464fadac5c00c893c58bce6c39bf59e4c7"
}'
{
  "noteTxs": [
    {
      "txid": "<string>",
      "index": 123,
      "note": {
        "value": 123,
        "payment_address": "<string>",
        "rcm": "<string>",
        "memo": "<string>"
      },
      "position": 123,
      "is_spent": true
    }
  ]
}
TRON API method that scans for shielded TRC20 notes using an outgoing viewing key (ovk). This method allows senders to track their outgoing shielded transactions and monitor sent payments for record-keeping purposes.
Get you own node endpoint todayStart for free and get your app to production levels immediately. No credit card required.You can sign up with your GitHub, X, Google, or Microsoft account.
The ovk must be provided without the 0x prefix and must be exactly 64 hexadecimal characters (32 bytes). The shielded_TRC20_contract_address must be in hex format (starting with 41), not base58 format. There is a block range limit: (end_block_index - start_block_index) <= 1000.

Parameters

  • start_block_index — the starting block number for scanning (inclusive)
  • end_block_index — the ending block number for scanning (exclusive, max 1000 blocks from start)
  • ovk — the outgoing viewing key for decrypting sent notes (64 hex characters, no 0x prefix)
  • shielded_TRC20_contract_address — the shielded TRC20 contract address to scan (hex format starting with 41, no 0x prefix)

Response

  • noteTxs — array of found outgoing shielded note transactions
    • txid — transaction ID containing the note
    • index — index of the note within the transaction
    • note — the decrypted note details
      • value — note value
      • payment_address — recipient shielded payment address
      • rcm — randomness commitment
      • memo — optional memo field
    • position — position in the merkle tree
    • is_spent — whether the note has been spent

Use case

The wallet/scanshieldedtrc20notesbyovk method is used for:
  • Tracking outgoing shielded TRC20 payments for transaction history
  • Monitoring sent transactions without revealing recipient details
  • Building wallet interfaces that show outbound shielded transaction records
  • Providing audit trails for shielded transaction activity
The outgoing viewing key (ovk) is derived from the spending key (sk) and is used by the sender to view shielded transactions they send. This 256-bit key allows transaction creators to track their outgoing payments without compromising the privacy of recipients.

Body

application/json
start_block_index
integer
required

Starting block number for scanning

Example:

10000000

end_block_index
integer
required

Ending block number for scanning

Example:

10000001

ovk
string
required

Outgoing viewing key for decrypting sent notes (64 hex characters, no 0x prefix)

Example:

"0ff58efd75e083fe4fd759c8701e1c8cb6961c4297a12b2c800bdb7b2bcab889"

shielded_TRC20_contract_address
string
required

Shielded TRC20 contract address to scan (hex format, no 0x prefix)

Example:

"41274fc7464fadac5c00c893c58bce6c39bf59e4c7"

Response

200 - application/json

Successfully scanned for outgoing shielded notes

noteTxs
object[]

Array of found outgoing shielded note transactions