
Who pays
4 minDifficulty Checked 2026-11-10- A sponsor can pay the fee, hold the reserve or do both.
- Reserve XRP stays in the sponsor's account. The ledger records who is responsible.
- The sponsored account keeps its own keys and signs its own transactions.
Every action on the XRP Ledger has two costs. A small fee is destroyed with each transaction. A reserve is locked while you keep things on the ledger: 1 XRP for the account, plus 0.2 XRP for each item it owns.
Today each account pays both for itself. A new user needs XRP before doing anything, even to receive a token.
Sponsorship changes who pays. Think of a parent who co-signs a lease. The child lives in the apartment and holds the keys. The parent's name is on the deposit.
- The sponsor is the account that pays.
- The sponsee is the account that benefits.
A sponsor can cover two things:
- Fees. The sponsor pays the transaction cost.
- Reserves. The sponsor's balance carries the reserve for an item the sponsee creates, such as a trust line. It can also carry the 1 XRP reserve for the sponsee's account.
Two points are easy to miss.
No XRP is handed over. The sponsor does not send XRP to the sponsee. The reserve stays in the sponsor's account. The ledger notes that the sponsor is responsible for it.
The sponsee stays in control. The sponsee holds the keys and signs every transaction. The sponsor cannot move the sponsee's funds.
A token issuer could use this to hand out tokens to people who hold no XRP. A business could onboard customers without sending each one XRP first.
This is not active on mainnet. Validators are voting on it.
A sponsored transaction adds three common fields:
| Field | Purpose |
|---|---|
Sponsor | Address of the sponsoring account |
SponsorFlags | What is sponsored. At least one flag must be set |
SponsorSignature | The sponsor's signing data, when a signature is needed |
SponsorFlags values:
| Flag | Value | Covers |
|---|---|---|
spfSponsorFee | 0x00000001 | The transaction fee |
spfSponsorReserve | 0x00000002 | Reserves for objects the transaction creates |
Both flags can be set together. One transaction cannot split the fee and the reserve between two sponsors.
spfSponsorFee works on every transaction type except pseudo-transactions. spfSponsorReserve works only on a listed set, including TrustSet, Payment, CheckCreate, EscrowCreate, PaymentChannelCreate, MPTokenAuthorize, CredentialCreate, SignerListSet and DepositPreauth.
New accounts. A Payment that creates an account can set tfSponsorCreatedAccount (0x00080000). The sender then sponsors the new account's base reserve. The Amount must be XRP.
Reserve math. The normal formula is acctReserve + objReserve × OwnerCount. With sponsorship it becomes:
(Sponsor ? 0 : acctReserve)
+ objReserve × (OwnerCount + SponsoringOwnerCount − SponsoredOwnerCount)
+ acctReserve × SponsoringAccountCountSponsoredOwnerCount: objects this account owns that someone else sponsors.SponsoringOwnerCount: objects this account sponsors for others.SponsoringAccountCount: accounts whose base reserve this account sponsors.
A sponsored ledger entry names its sponsor in a Sponsor field. Trust lines use HighSponsor and LowSponsor, one per side.
Batch and delegation. In a Batch, spfSponsorFee goes on the outer transaction and spfSponsorReserve on the inner ones. Reserve sponsorship cannot be combined with a delegated transaction.
Related: Accounts and reserves, Fees and burn.
- Sponsored Fees and ReservesRead 2026-11-10
- Transaction Common FieldsRead 2026-11-10
- PaymentRead 2026-11-10
- ReservesRead 2026-11-10
