Get a transaction receipt

The transaction receipt gives you information about a transaction including whether or not the transaction reached consensus on the network. You request the receipt for every transaction type and there is currently no transaction fee associated with this network request.

Receipts can be requested from a Hedera network for up to 3 minutes.

Transaction Receipt Contents

The transaction receipt returns the following information about a transaction:

  • Whether the transaction reached consensus or not (success or fail)

  • The newly generated account ID, topic ID, token ID, file ID, schedule ID, scheduled transaction ID or smart contract ID

  • The exchange rate

  • The topic running hash

  • The topic sequence number

  • The total supply of token

  • The serial numbers for of the newly created NFTs after a token mint transaction was executed

Transaction Signing Requirements

  • Transaction receipt requests do not have an associated fee at this time so there is no signature requirement

Constructor

Description

new TransactionReceiptQuery()

Initializes the TransactionReceiptQuery Object

  • Transaction ID: The ID of the transaction to return the receipt for

  • Include Duplicates: Whether or not to include the receipts for duplicate transactions

  • Include Children: Whether or not to include the receipt for children transactions triggered by a parent transaction

Method

Type

Requirement

setTransactionId(<transactionId>)

Required

setIncludeDuplicates(<value>)

boolean

Optional

setIncludeChildren(<value>)

boolean

Optional

new TransactionReceiptQuery()
    .setTransactionId(transactionId)
    .execute(client)

Helper Methods

Method

Type

Description

<TransactionResponse>.getReceipt(<client>)

TransactionReceipt

Returns the receipt of a transaction

<TransactionResponse>.getReceipt(<client, timeout>)

Client, Duration

Request the receipt from the network for this duration

<TransactionResponse>.getReceiptQuery()

TransactionReceiptQuery

Returns the TransactionReceiptQuery response for a transaction. This will not error on bad status like RECEIPT_NOT_FOUND and will return information about a failed transaction if necessary.

<TransactionResponse>.getReceiptAsync(<client, timeout>)

Client, Duration

Request receipt asynchronously for the provided duration

<TransactionReceipt>.status

Status

Whether the transaction reached consensus or not

<TransactionReceipt>.accountId

AccountId

The newly generated account ID

<TransactionReceipt>.topicId

TopicId

The newly generated topic ID

<TransactionReceipt>).fileId

FileId

The newly generated file ID

<TransactionReceipt>).contractId

ContractId

The newly generated contract ID

<TransactionReceipt>).tokenId

TokenId

The newly generated token ID

<TransactionReceipt>).scheduleId

ScheduleId

The newly generated schedule ID

<TransactionReceipt>).scheduledTransactionId

TransactionId

The generated scheduled transaction ID

<TransactionReceipt>).exchangeRate

ExchangeRate

The exchange rate in hbar, cents, and expiration time

<TransactionReceipt>.topicRunningHash

ByteString

The topic running hash

<TransactionReceipt>.topicSequenceNumber

long

The topic sequence number

<TransactionReceipt>.totalSupply

long

The total supply of a token

<TransactionReceipt>.transactionId

TransactionId

The transaction ID of the transaction the receipt is being requested for

<TransactionReceipt>.serials

List<long>

The list of newly created serial numbers upon execution of a token mint transaction.

Java
//Get the receipt of the transaction
TransactionReceipt receipt = txResponse.getReceipt(client);

System.out.println("The transaction receipt: " +receipt);

//v2.0.0
JavaScript
//Get the receipt of the transaction
const receipt = await txResponse.getReceipt(client);

console.log("The transaction receipt: " +receipt);

//v2.0.0
Go
//Request the receipt of the transaction
receipt, err := txResponse.GetReceipt(client)

if err != nil {
    panic(err)
}

fmt.Printf("The transaction receipt %v\n", receipt)

//v2.0.0

Sample Output:

TransactionReceipt{
     status=SUCCESS,
     exchangeRate=ExchangeRate{
          hbars=1,
          cents=12, 
          expirationTime=2100-01-01T00:00:00Z
     }, 
     accountId=null,
     fileId=null, 
     contractId=null, 
     topicId=null, 
     tokenId=null, 
     topicSequenceNumber=null, 
     topicRunningHash=null, 
     totalSupply=0, 
     scheduleId=0.0.2531
     schdeduledTransactionId=null,
     serials=[]
    }

``

Last updated

#2871: HIP-423 long term scheduled transactions

Change request updated