Skip to main content
Reports where a submitted deposit is, from the source-chain transaction receipt. Poll it until the status is terminal, and credit the user only on done.

Request

provider
string
required
The provider from the original /deposit/quote response.
receipt
object
required
The receipt of the deposit transaction submitted on the source chain.

Response

status
string
One of pending, done, failed, expired. See Transaction statuses for what each means and when to credit the user.
txHashes
object
Transaction hashes for the two legs, as they become known.
curl -X POST "$RHEON_API/deposit/status" \
  -H "Content-Type: application/json" \
  -d '{
    "provider": "rheon-router",
    "receipt": {
      "txHash": "0xabc123...",
      "logs": [
        {
          "address": "0x1231DEB6f5749EF6cE6943a275A1D3E7486F4EaE",
          "topics": ["0xddf252ad..."]
        }
      ]
    }
  }'
{
  "status": "done",
  "txHashes": {
    "origin": "0xabc123...",
    "delivered": "0xdef456..."
  }
}
{
  "status": "pending",
  "txHashes": {
    "origin": "0xabc123..."
  }
}

Polling

Poll every few seconds until status is terminal (done, failed, or expired). Keep intervals above the rate limit (5 requests / 10s / IP). An expired transfer is auto-refunded by the routing layer - there is no refund call to make.

Errors

HTTPcodeWhen
400invalid_requestprovider or receipt is missing or malformed.
429rate_limitedOver the rate limit (5 requests / 10s / IP).
500internalUnexpected server error.