How to Do XRP Taxes: Reserves, Destination Tags and Exchange Withdrawals
Published on July 20, 2026 - 8 min read

Table of Contents
Overview
XRP has been around longer than almost everything else people hold, and the XRP Ledger that carries it is unlike the chains most tax guides are written for. There is no gas, no smart-contract sprawl, no token spam to speak of. Fees are a fraction of a cent. The full history of every account is available from public servers, free, going back years.
It also has three features that confuse a tax record if you do not know them: a reserve that locks part of your balance, destination tags that route exchange deposits, and issued currencies that share a name but not an issuer. This article covers importing an XRP address and reading each of those correctly.
Importing an XRP Address
An XRP Ledger account is a single address starting with r. It holds the whole history — XRP in and out, payments, trades on the ledger's built-in exchange, trust lines and issued tokens — and the public servers return all of it. Copy the address from your wallet's Receive screen and import it.
Two things to watch when copying:
- Use the classic address, not an X-address. Some wallets also show an address starting with
X, which bundles a destination tag into the string. Import ther…form. - Hardware and software wallets share the format. Ledger, Trezor, Xaman, Trust Wallet, Exodus — the address looks the same and imports the same way.
CryptoTaxBridge reads the history directly from the XRP Ledger's public servers. Nothing to sign up for, nothing to export.
Import an XRP address
The Reserve Is Not a Loss
Every XRP account must keep a minimum balance locked: a base reserve for the account itself, plus a smaller amount for each object the account owns, such as a trust line. The base reserve is currently 1 XRP and the per-object reserve 0.2 XRP; both were ten times higher until late 2024.
The reserve is not spent and not gone. It is your XRP; it simply cannot be sent while the account exists. For tax, nothing happens: no disposal, no loss, no fee. The only effect is that the spendable balance your wallet shows is lower than the total the history adds up to, which is one of the standard causes of a balance that does not match the report. The import records movements, not reserves, so the report's balance is the total and the wallet's is the spendable — both right.
When an account is first funded, the funding payment has to be at least the base reserve or the account is never created. That first payment is an ordinary transfer or purchase; the reserve is a rule about the balance, not an event in it.
Destination Tags and Exchange Withdrawals
Exchanges do not give each customer their own XRP address. They have one address and assign each customer a destination tag — a number you must include when depositing, so the exchange knows whose XRP arrived. Withdraw from an exchange and the payment comes from that shared address to yours, with no tag needed.
For tax, a withdrawal from an exchange to your own wallet is a transfer: you owned the XRP before and after. But it has two halves. The exchange's records show a withdrawal and its fee; the ledger shows a payment arriving from the exchange's address. Import both and they match into one transfer. Import only the wallet and the XRP appears from nowhere with no cost basis — the purchase that gave it one happened on the exchange.
Connect the exchanges you used alongside the address. Importing exchange data covers how, and how wallet transfers are treated covers the principle.
A deposit to an exchange with a missing or wrong tag is a separate, painful story that ends with a support ticket. For tax it is still a transfer, once the exchange credits it.
Match exchange withdrawals
Fees
Every XRP Ledger transaction destroys a tiny amount of XRP — typically a few hundredths of a cent — rather than paying it to anyone. It is still a fee: a very small disposal of XRP and an allowable cost of the transaction. Over years of use it remains small, but it is in the record, because a balance reconciled without fees drifts by exactly their total. Whether network fees are deductible covers the general principle.
Trades on the Ledger
The XRP Ledger has a built-in decentralised exchange and automated market makers. Trading XRP for an issued currency there, or one issued currency for another, is an exchange of one cryptoasset for another — a disposal of what you gave and an acquisition of what you received at that day's values. HMRC's disposal guidance says so explicitly, and the IRS treats it the same way. The import records these as exchanges.
XRP itself has no staking. Any yield on XRP comes from a custodial product, and that product's records are where the income lives.
Issued Currencies and Trust Lines
Tokens on the XRP Ledger are debts issued by an account: a USD balance is a claim on a specific issuer, and USD from two different issuers is two different assets even though the code is the same. RLUSD is the best-known issued stablecoin; gateways have issued dollars, euros and gold-backed tokens for over a decade.
To hold one you open a trust line to the issuer, which costs the per-object reserve while it exists. Opening and closing trust lines are not disposals. Receiving, sending or trading the issued currency is handled like any other asset. During review, if two assets show the same code, check the issuer before assuming they are the same thing.
A Short History Is Still a History
A lot of XRP was bought years ago, moved once to a wallet, and left alone. The account's history may be a handful of transactions. It still needs importing, because the one thing a tax report cannot do without is the cost basis of what you eventually sell, and that basis was set by the purchase on an exchange and carried into the wallet by the transfer. One address, one exchange connection, and the record is complete.
An XRP Import Checklist
Before generating a report, confirm:
- every
r…address you own is imported, using the classic form rather than an X-address; - the reserve is understood as locked, not as a fee or loss, when comparing balances;
- exchange withdrawals match their arrivals as transfers, with the exchange connected;
- trades on the ledger's exchange appear as exchanges of one asset for another;
- issued currencies with the same code are checked by issuer;
- fees are present on every outgoing transaction.
Conclusion
The XRP Ledger is the easiest chain to import and one of the easiest to get wrong by reasoning: the reserve that looks like a loss, the withdrawal that looks like income, the two dollars that are not the same dollar. Import the address, connect the exchange, and read those three things for what they are.
Connect your wallets
Official Resources
- XRP Ledger: reserves
- HMRC: what is a disposal (CRYPTO22100)
- HMRC: allowable expenses (CRYPTO22150)
- IRS: digital assets
This article provides general information and is not tax advice. Wallet software changes; where this article and your wallet's own documentation disagree, the wallet is right.
Keep reading
How to Do Crypto.com Onchain Wallet Taxes: Not the Exchange AppCrypto.com runs a custodial app and a self-custody wallet under one brand. Here is which history lives where, how to import the Onchain wallet, and how transfers between the two are read.
How to Do Exodus Crypto Taxes: One App, One Import per ChainExodus holds dozens of assets behind one interface, and its built-in exchange hides a disposal in every swap. Here is how to import each chain and read what the swaps really were.
How to Do Trezor Crypto Taxes: Export the xpub and Import Every AccountA Trezor stores keys, not transactions. Here is where Trezor Suite keeps the xpub, why each account and passphrase is a separate history, and how to import all of it.
How to Import a Bitcoin Wallet for Taxes: Addresses, xpub and Missing HistoryImporting a single Bitcoin address usually captures a fraction of your transactions. Here is why change addresses hide your history, and what to import instead.
How to Do Your Ledger Crypto Taxes: Import Every Chain From One DeviceA Ledger device holds coins on many separate blockchains at once. Here is how to import all of them for crypto tax reporting without losing history.
How to Do Ethereum, Polygon and Arbitrum Taxes: Every EVM Chain in One GuideEthereum and its sister networks share one address format and one set of tax rules. Here is what is taxable on an EVM chain, how gas, bridges and airdrops are read, and how to import all fourteen.