Website
Dashboard
Website
Dashboard
  • πŸ‘‰ Welcome
  • 🧐 How to set up an account
  • πŸ“ˆ Monitoring and analytics
  • πŸ” Introducing coins vs tokens
  • πŸ‘¨β€πŸ’Ό The meaning of owning crypto
  • πŸ’° Wallets
  • πŸ“œ Supported Blockchains
  • GITHUB
    • 🐘 SDK PHP
    • πŸ“ SDK Python
    • πŸ‘¨β€πŸ’» SDK GOLANG
    • ✳️ SDK NODE JS
    • ✳️ PHP Wallet
  • API REFERENCE
    • πŸ”‘ Authentication & base URL
    • Bitcoin
      • πŸ” Info
        • 🧐 Check BTC node health
        • πŸ“œ Get latest Bitcoin block
      • πŸ†Ž Block
        • πŸ“ˆ Get Bitcoin block by height
        • πŸ‘¨β€πŸ’» Get Bitcoin block by hash
        • πŸ“‘ Get transaction count in block by height
        • πŸ“‘ Get transaction count in block by hash
      • πŸ’° Transactions
        • πŸ‘¨β€πŸ’» Get Bitcoin transaction by hash
        • πŸ“ Send pre-signed raw Bitcoin transaction
      • πŸ‘¨β€πŸ’Ό Account
        • πŸ’° List BTC addresses managed by node wallet
        • πŸ†Ž Get BTC received amount for address
      • πŸ” Watch-only addresses
        • πŸ” Register an account zpub
        • πŸ“œ List registered extended public keys
        • πŸ†Ž Issue the next BTC address
        • πŸ“‘ History of issued BTC addresses
        • ❌ Delete a registered zpub
      • πŸ” JSON-RPC
        • πŸ” JSON-RPC
    • Ethereum
      • πŸ” Info
        • 🧐 Check ETH node health
        • πŸ“œ Get latest Ethereum block
      • πŸ†Ž Block
        • πŸ“ˆ Get Ethereum block by height
        • πŸ‘¨β€πŸ’» Get Ethereum block by hash
        • πŸ“‘ Get transaction count in block by height
        • πŸ“‘ Get transaction count in block by hash
      • πŸ’° Transactions
        • πŸ‘¨β€πŸ’» Get Ethereum transaction by hash
        • πŸ‘¨β€πŸ’» Get Ethereum transaction receipt by hash
        • πŸ“ Send pre-signed raw Ethereum transaction
      • πŸ‘¨β€πŸ’Ό Account
        • πŸ” List ETH accounts managed by node
        • πŸ†Ž Get ETH balance for address
        • πŸ†Ž Get transaction count (nonce) for address
        • πŸ‘‰ Estimate gas for transaction
        • πŸ“‘ Read-only contract call (eth_call)
        • πŸ‘¨β€πŸ’Ό Send transaction from node-managed account
      • πŸ” Watch-only addresses
        • πŸ” Register an account xpub
        • πŸ“œ List registered extended public keys
        • πŸ†Ž Issue the next ETH address
        • πŸ“‘ History of issued ETH addresses
        • ❌ Delete a registered xpub
      • πŸ” JSON-RPC
        • πŸ” JSON-RPC
    • Tron
      • πŸ” Info
        • πŸ“‘ Get TRX node info
        • 🧐 Check Tron node health
        • πŸͺ™ List supported TRC20 tokens
      • πŸ†Ž Block
        • πŸ“œ Get latest Tron block
        • πŸ“œ Get latest N blocks
        • 🟠 Get block by number
        • πŸ‘¨β€πŸ’» Get block by hash
      • πŸ’° Transactions
        • πŸ‘¨β€πŸ’» Get transaction by hash
        • πŸ†Ž Get all transactions for an address
        • πŸ“ Create an unsigned transaction
        • πŸ“‘ Broadcast a signed transaction
      • πŸ‘¨β€πŸ’Ό Account
        • πŸ†Ž Validate a Tron address
        • πŸ” Get account information
        • πŸ’° Get account balance
        • πŸ’° Get all asset balances
        • πŸ’΅ Get a single TRC20 balance
        • ⚠️ Create a new Tron address (deprecated)
        • ⚠️ Generate a private key from a mnemonic (deprecated)
        • ⚠️ Send TRX from one address to another (deprecated)
        • ⚠️ Send USDT (TRC20) from one address to another (deprecated)
      • πŸ“Š Schemas
      • πŸ” JSON-RPC
    • Webhooks
      • ✳️ Management
        • πŸ‘¨β€πŸ“œ List webhooks
        • 🧐 Create webhook
        • πŸ‘‰ Get webhook
        • πŸ‘¨β€πŸ” Update webhook
        • ❌ Delete webhook
        • πŸ”‘ Rotate signing secret
      • πŸ“¨ Receiving notifications

πŸ‘¨β€πŸ’» Get Ethereum transaction receipt by hash

Code samples

GET /api/v1/eth/transactions/{hash}/receipt

curl 'https://settla.net/api/v1/eth/transactions/0x086740aabf9d0749ce8fb7257b334631457e33c85b547b347c7cf3e6cabe1c65/receipt' \
  -H 'X-API-Key: $SETTLA_API_KEY' \
  -H 'Accept: application/json'

Returns eth_getTransactionReceipt β€” the outcome of a mined transaction. This is the endpoint that answers "did it work?".

status is the only field that says success or failure. 0x1 succeeded, 0x0 reverted. A reverted transaction is still mined, still charged the gas in gasUsed, and still returns 200 here with an empty logs array. Treating "receipt exists" as "payment received" is the classic way to credit a customer for a transfer that never happened.

A 404 means the transaction is not mined yet (or is unknown). After a broadcast, poll here until you get a 200, then check status.

For an ERC-20 payment the amount is not in the transaction's value, it is in logs. Look for an entry whose address is the token contract and whose topics[0] is the Transfer signature 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef; then topics[1] is the sender, topics[2] the recipient (both left-padded to 32 bytes) and data the raw amount in the token's own units. Always confirm address matches the contract you expect β€” anyone can emit a Transfer log from a worthless contract.

contractAddress is non-null only when the transaction deployed a contract.

πŸ› οΈ Parameters

NameInTypeRequiredDescription
hashpathstringtrueTransaction hash, 0x-prefixed, 32 bytes.

Example responses

200 Response β€” Mined and successful β€” status 0x1, with two ERC-20 Transfer logs

{
  "blockHash": "0x64b665414720230df4845b01ff7b9a5c7a5c5ad89ef398eb82ecb8e8138a82a8",
  "blockNumber": "0x18ae5c0",
  "contractAddress": null,
  "cumulativeGasUsed": "0x1987f",
  "effectiveGasPrice": "0x15baa5e45e",
  "from": "0x315d2ee4fccda0def532ef4108ff57204f8d9eba",
  "gasUsed": "0x1987f",
  "logs": [
    {
      "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
      "topics": [
        "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
        "0x000000000000000000000000447a03c131c0a97a8b8d548e3cd81aec4ce05d73",
        "0x0000000000000000000000003dd49f67e9d5bc4c5e6634b3f70bfd9dc1b6bd74"
      ],
      "data": "0x00000000000000000000000000000000000000000000000003a4f852ee3e26a0",
      "blockNumber": "0x18ae5c0",
      "transactionHash": "0x086740aabf9d0749ce8fb7257b334631457e33c85b547b347c7cf3e6cabe1c65",
      "transactionIndex": "0x0",
      "blockHash": "0x64b665414720230df4845b01ff7b9a5c7a5c5ad89ef398eb82ecb8e8138a82a8",
      "logIndex": "0x0",
      "removed": false,
      "blockTimestamp": "0x6a96526f"
    },
    {
      "address": "0x3845badade8e6dff049820680d1f14bd3903a5d0",
      "topics": [
        "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
        "0x0000000000000000000000003dd49f67e9d5bc4c5e6634b3f70bfd9dc1b6bd74",
        "0x0000000000000000000000009f4846679287e7c8da0e8e61f08eb378b6d5f3cf"
      ],
      "data": "0x00000000000000000000000000000000000000000000037a209f750b95954351",
      "blockNumber": "0x18ae5c0",
      "transactionHash": "0x086740aabf9d0749ce8fb7257b334631457e33c85b547b347c7cf3e6cabe1c65",
      "transactionIndex": "0x0",
      "blockHash": "0x64b665414720230df4845b01ff7b9a5c7a5c5ad89ef398eb82ecb8e8138a82a8",
      "logIndex": "0x1",
      "removed": false,
      "blockTimestamp": "0x6a96526f"
    }
  ],
  "logsBloom": "0x00200000000000000000000080000004000000000000000000000000000000000000000000000000000000000000000002000000080020000000000000000000…",
  "status": "0x1",
  "to": "0x447a03c131c0a97a8b8d548e3cd81aec4ce05d73",
  "transactionHash": "0x086740aabf9d0749ce8fb7257b334631457e33c85b547b347c7cf3e6cabe1c65",
  "transactionIndex": "0x0",
  "type": "0x2"
}

200 Response β€” Mined but reverted β€” status 0x0, gas still charged, logs empty. Constructed for illustration; the hash is the one above, which in reality succeeded.

{
  "blockHash": "0x64b665414720230df4845b01ff7b9a5c7a5c5ad89ef398eb82ecb8e8138a82a8",
  "blockNumber": "0x18ae5c0",
  "contractAddress": null,
  "cumulativeGasUsed": "0x3296e",
  "effectiveGasPrice": "0x15baa5e45e",
  "from": "0x315d2ee4fccda0def532ef4108ff57204f8d9eba",
  "gasUsed": "0x3296e",
  "logs": [],
  "logsBloom": "0x0000000000000000000000000000000000000000000000000000000000000000…",
  "status": "0x0",
  "to": "0x447a03c131c0a97a8b8d548e3cd81aec4ce05d73",
  "transactionHash": "0x086740aabf9d0749ce8fb7257b334631457e33c85b547b347c7cf3e6cabe1c65",
  "transactionIndex": "0x0",
  "type": "0x2"
}

404 Response

{
  "error": "Transaction receipt not found"
}

500 Response

{
  "error": "Could not connect to ETH node."
}

πŸ” Responses

StatusMeaningDescriptionSchema
200OKEthereum transaction receiptInline
404Not FoundNo receipt. Normal for a transaction that is still pending β€” keep polling. Also returned for a hash the node has never seen.Inline
500Internal Server ErrorNode unreachable, or the hash is not valid hex.Inline

πŸ”„ Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
Β» transactionHashstringfalsenonenone
Β» transactionIndexstringfalsenonenone
Β» blockHashstringfalsenonenone
Β» blockNumberstringfalsenonenone
Β» fromstringfalsenonenone
» tostring¦nullfalsenonenone
Β» cumulativeGasUsedstringfalsenonenone
Β» effectiveGasPricestringfalsenonenone
Β» gasUsedstringfalsenonenone
» contractAddressstring¦nullfalsenonenone
Β» logs[object]falsenonenone
»» addressstringfalsenonenone
»» topics[string]falsenonenone
»» datastringfalsenonenone
»» blockNumberstringfalsenonenone
»» transactionHashstringfalsenonenone
»» transactionIndexstringfalsenonenone
»» blockHashstringfalsenonenone
»» logIndexstringfalsenonenone
»» removedbooleanfalsenonenone
Β» logsBloomstringfalsenonenone
Β» statusstringfalsenone0x1 for success, 0x0 for failure.
Β» typestringfalsenonenone

Status Code 404

NameTypeRequiredRestrictionsDescription
Β» errorstringfalsenonenone

Status Code 500

NameTypeRequiredRestrictionsDescription
Β» errorstringfalsenonenone
To perform this operation, you must be authenticated by means of one of the following methods: ApiKeyAuth
Prev
πŸ‘¨β€πŸ’» Get Ethereum transaction by hash
Next
πŸ“ Send pre-signed raw Ethereum transaction