Skip to main content
Turns a quote from /deposit/quote into the unsigned transaction the user’s wallet signs and submits. If the source token needs an ERC-20 allowance, an approval transaction is returned too - sign it first.
Rheon never signs. Your client submits the transactions with the user’s wallet, on the source chain.

Request

quote
object
required
The full quote object returned by /deposit/quote, unchanged.

Response

tx
object
The unsigned deposit transaction to sign and submit on the source chain.
approval
object
Optional. Present only when the source token needs an ERC-20 allowance. Sign and submit it before tx. Same shape as tx.
curl -X POST "$RHEON_API/deposit/transaction" \
  -H "Content-Type: application/json" \
  -d '{
    "quote": {
      "provider": "rheon-router",
      "outAmount": "4986000",
      "validUntil": 1720800000,
      "payload": { "route": "..." }
    }
  }'
{
  "approval": {
    "to": "0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",
    "data": "0x095ea7b3...",
    "value": "0",
    "chainId": 10
  },
  "tx": {
    "to": "0x1231DEB6f5749EF6cE6943a275A1D3E7486F4EaE",
    "data": "0x4630a0d8...",
    "value": "0",
    "chainId": 10
  }
}

Signing order

  1. If approval is present, sign and submit it first, and wait for it to confirm.
  2. Sign and submit tx.
  3. Take the tx receipt to /deposit/status to track delivery.

Errors

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