Site icon Chainstack

XRP Ledger vs Stellar for payments: RPC, fees and speed

Xrp Ledger Vs Stellar 1 logo

TL;DR

Two blockchains built for payments can produce very different engineering decisions. XRPL offers native financial operations and liquidity routing, while Stellar combines payment primitives with Soroban smart contracts. But choosing between them involves more than transaction speed and fees.

How do their RPC methods differ when querying account state, estimating fees, routing payments and submitting transactions? How does each network handle transaction submission, confirmation and real-time updates? And what do these differences mean for the way you build and operate a payment application?

This guide compares XRPL and Stellar, covering RPC methods, transaction lifecycles, speed, fees and ecosystem growth. The goal: help you choose the right foundation for a reliable payment system.

Building payment systems

Already familiar with XRPL and Stellar? Skip the network overview and head straight to “RPC infrastructure” to explore endpoints, API methods and deployment options.

Networks like the XRP Ledger (XRPL) and Stellar are designed to support payments, asset transfers and currency exchange.

The XRP Ledger (XRPL) is a public blockchain launched in 2012 with a focus on payments and the exchange of digital assets. Its native currency, XRP, is used to pay transaction fees and can serve as a bridge asset for currency conversion. The ledger also supports issued currencies, a built-in decentralized exchange and pathfinding that identifies routes for payments between different assets.

New to XRPL? Here’s a quick guide to how the XRP Ledger works.

Stellar is a public blockchain launched in 2014 to connect financial institutions, payment services and digital asset networks. Its native currency, lumens (XLM), is used to pay transaction fees and maintain account reserves. Stellar supports the issuance of assets such as stablecoins, cross-currency payments through path payments and a decentralized exchange. Its Soroban smart-contract platform extends these capabilities to programmable financial applications, including tokenized assets and contract-based payment workflows.

Want to learn more about Stellar before diving in? Start with this overview.

Understanding how these networks handle transactions, fees, liquidity and ledger data is essential.

A reliable payment architecture needs to:

How do XRPL and Stellar handle these requirements differently? To find out, let’s compare their speed, fees, RPC methods and typical transaction lifecycles.

XRPL vs Stellar: speed and fees

Speed

Payment speed directly affects how responsive an application feels. When comparing XRPL and Stellar, the key consideration is how quickly a transaction is confirmed and the application can reflect that result to the user.

XRPL typically settles transactions in around three to five seconds. Stellar’s Protocol 28, known as the Adapter upgrade, went live on Mainnet on September 16, 2026. It adds changes that make ledgers close faster and with less variance, and sampled Mainnet intervals now sit at about five seconds.

The workload also matters. A Stellar transaction can contain multiple operations, while Soroban execution introduces contract resource requirements. XRPL payment routing can involve multiple offers and liquidity sources.

In practical terms, both networks offer relatively fast settlement. The difference in actual payment confirmation time depends not only on the network itself but also on API response times, network conditions and how the application verifies the transaction before displaying it as successful.

Fees

A low network fee simplifies payment economics. The application’s fee logic still needs to account for network conditions and transaction requirements. While the two look remarkably similar at face value, both charging a fraction of a cent per transfer, they use completely different fee mechanics and network structures to manage those costs.

The fundamental cost structures depend on the native tokens: XRP for XRPL and lumens (XLM) for Stellar.

XRPL: Calculates fees in drops (1 XRP = 1,000,000 drops). Under standard conditions, the reference transaction cost is a 10 drop minimum. Under heavy load, the required fee escalates to price out spam. Complex actions like multi-signed transactions or finishing an escrow have higher base costs.

Stellar: Structures its transactions as a bundle of operations (up to 100 per transaction). Charges are a base fee per operation, measured in stroops (1 XLM = 10,000,000 stroops). During surge pricing, Stellar shifts to an auction where users specify a max_fee they are willing to pay per operation and transactions are ordered by the highest fee bid.

XRPL burns its transaction fees, so every transfer makes the overall supply of XRP slightly scarcer. Stellar collects fees into a designated pool.

Standard transaction fees are virtually unnoticeable on both networks. Account reserves are the larger up-front cost. To keep an account active on the XRPL, you must hold a base reserve, currently 1 XRP on Mainnet, plus 0.2 XRP for each object the account owns, such as a trust line or an escrow. Part of the reserve is recoverable if you delete the account. Stellar also locks a reserve for each account and for each entry it holds, such as a trustline.

A payment gateway processing hundreds of transfers should estimate fees against the intended transaction structure and monitor changing network conditions.

RPC infrastructure

The API methods determine how the application interacts with the ledger. The infrastructure determines how consistently those methods are available and how much historical data the service can retrieve. Chainstack supports each network with deployment options aligned with different workload requirements.

XRPL RPC

XRPL provides native JSON-RPC and WebSocket APIs for querying account state, estimating transaction fees, submitting signed transactions, inspecting liquidity and monitoring ledger activity. Chainstack provides managed RPC access to XRPL Mainnet and Testnet, allowing applications to use these native APIs through HTTPS and WebSocket endpoints.

Deploy an XRPL node in a few steps:

  1. Open the Chainstack console and create a project.
  2. Select XRP Ledger from the available blockchain protocols.
  3. Choose Mainnet or Testnet, then select the deployment type according to the application’s infrastructure requirements.
  4. Name the node, review the configuration and click Deploy Node.

Once deployment is complete, the endpoints are ready for API requests.

Network details

Mainnet

XRPL uses its own JSON-RPC and WebSocket APIs, which are incompatible with Ethereum’s eth_* interface. For EVM compatibility and Solidity smart contracts, the XRPL EVM Sidechain is a separate option.

The XRPL API exposes methods for querying account state, retrieving ledger data, submitting transactions, checking transaction results and interacting with the native decentralized exchange. The full method list is available in the official XRPL public API reference.

Core methods include:

For example, account_info retrieves an account’s validated state and sequence number before a payment transaction is constructed. Setting ledger_index to validated ensures the response reflects a validated ledger rather than the current open ledger.

const response = await fetch("https://xrpl-mainnet.core.chainstack.com/<KEY>",
  {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      method: "account_info",
      params: [{
          account: "rG1QQv2nh2gr7RCZ1P8YYcBUKCCN633jCn",
          ledger_index: "validated"
        }]
    })
  });

const data = await response.json();
console.log(data.result);

The response includes account data and the ledger index used for the lookup.

For transaction submission, submit accepts a signed transaction blob. The response provides an initial engine result. Follow it with a tx lookup to verify the transaction’s final status in a validated ledger. This separates transaction submission from confirmation and gives payment systems a reliable basis for updating settlement records.

XRPL WebSocket connections allow applications to receive server-pushed updates without repeatedly issuing HTTP requests. This is useful for payment dashboards, exchange interfaces, wallet balance updates and services monitoring multiple accounts concurrently.

The subscribe method supports several monitoring options:

A persistent WebSocket connection can reduce repeated polling requests when monitoring live payment activity. For settlement-critical workflows, transaction notifications should still be checked for validation status and the engine result before a payment is marked complete.

Chainstack’s HTTPS and WebSocket access allows applications to combine request-response queries with real-time subscriptions. For compatible SDKs, development tools, and setup instructions, refer to the XRPL tooling documentation.

Stellar RPC

Stellar provides a native JSON-RPC API for querying ledger data, reading account and contract state, submitting transactions and retrieving transaction results. Chainstack supports Stellar Mainnet and Testnet through Global and Dedicated node deployments with HTTPS access to the network’s stellar-rpc methods.

Deploy a Stellar node in a few steps:

  1. Open the Chainstack console and create a project.
  2. Select Stellar from the available blockchain protocols.
  3. Choose Mainnet or Testnet, then select Global or Dedicated deployment based on the application’s infrastructure requirements.
  4. Name the node, review the configuration and click Deploy Node.

Once deployment is complete, the endpoint is ready to accept JSON-RPC requests.

Network details

Mainnet

Stellar RPC exposes methods for checking node health, querying ledger data, reading ledger entries, submitting transactions, monitoring transaction results and interacting with Soroban smart contracts. The full method list is available in the official Stellar RPC API reference.

Core methods include:

For example, getLatestLedger provides a reference point for the most recent ledger known to the RPC service. Applications can use the returned sequence number to track ledger progression and coordinate subsequent ledger queries.

const response = await fetch("https://stellar-mainnet.core.chainstack.com/<KEY>",
  {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      jsonrpc: "2.0",
      id: 1,
      method: "getLatestLedger",
      params: {}
    })
  });

const data = await response.json();
console.log(data.result);

The response contains information about the latest ledger available through the service, including its sequence number and protocol version.

The distinction from XRPL is operationally important: XRPL supports native WebSocket subscriptions for ledger and transaction streams, while Stellar RPC integrations on Chainstack use HTTPS requests for queries and confirmation checks. This affects how applications implement live payment updates and event processing.

For SDK setup, method examples, and integration guidance, refer to the Stellar tooling documentation.

How much history Chainstack nodes keep. XRPL Global Nodes are Extended nodes that hold roughly 750,000 to 1,500,000 recent ledgers, about 33 to 66 days at the Mainnet close rate. Requests below that window return lgrNotFound, so read complete_ledgers from server_info and use a full-history source for older data. Stellar Global Nodes keep a window longer than the stellar-rpc default of about 7 days, and getHealth reports it. Transaction and event queries are limited to that window. On Mainnet, getLedgers also serves ledgers older than the window. See the XRPL tooling and Stellar tooling docs.

Transaction lifecycle

An RPC response confirms that a request reached a particular stage, but it does not always establish the transaction’s final outcome. The payment service needs to track the transaction through the network and verify its final status before updating the application or notifying the user.

Let’s look at the stages a transaction goes through, how its status changes and when it can be considered final.

XRPL transaction flow

An XRPL payment typically looks like this:

  1. Query account_info to retrieve the account sequence and validated state. To construct a transaction, first fetch the account’s current sequence number and verify its status on-chain.
  2. Estimate network fees with fee. The method returns details directly in drops of XRP, broken down by base_fee, median_fee and open_ledger_fee.
  3. Define parameters like TransactionType: "Payment" and sign the transaction. This is done locally and offline using your private key via an SDK (for example xrpl.js or xrpl-py) to protect your credentials.
  4. Submit the transaction with submit, in one of two modes:
  1. Confirm the result in one of two ways:

Interpret the transaction status:

Stellar transaction flow

A Stellar payment typically follows this sequence:

  1. Retrieve the account state: Use the Stellar RPC API (getLedgerEntries, which the JavaScript SDK wraps as server.getAccount) to retrieve the source account’s sequence number and current state. The sequence number determines the transaction’s ordering and must be handled correctly when preparing multiple transactions from the same account.
  2. Estimate fees: Query getFeeStats to inspect recent fee conditions and determine an appropriate transaction fee. Standard Stellar transactions pay fees in XLM. Soroban transactions also account for resource fees associated with smart-contract execution.
  3. Simulate Soroban transactions when required: Transactions that invoke Soroban smart contracts require additional preparation. Call simulateTransaction to estimate resource requirements and obtain transaction data needed to prepare the transaction before signing and submission.
  4. Submit the signed transaction: Send the signed transaction envelope to Stellar RPC using sendTransaction. The response indicates whether the submission was accepted for processing, rejected or already known to the server. An accepted submission is not proof of final transaction success.
  5. Verify ledger inclusion: Query getTransaction with the transaction hash to retrieve its processing status and result. If the status is NOT_FOUND, the transaction may still be pending, may have expired from the submission queue or may never have reached the network. Retry checks with an appropriate backoff rather than treating the first missing result as definitive failure.

Monitor getTransaction status:

Handle sendTransaction status:

Ecosystem

Network capabilities become more tangible through deployed applications.

MoneyGram’s Stellar integration connects digital wallets to cash-to-crypto deposit and withdrawal services. Its MoneyGram Ramps integration provides access to off-ramps across more than 170 countries and about 475,000 locations.

Franklin Templeton’s Benji platform provides another example. Its OnChain U.S. Government Money Fund uses Stellar as the public blockchain system for recording fund-share ownership and processing transactions. The fund’s Stellar-based BENJI assets were reported at approximately $605 million as of October 6, 2026.

Stellar is also exploring internet-native payments through x402, which enables applications and AI agents to pay for API resources using stablecoins.

XRPL’s native payment features suit services that require asset transfers, currency conversion, and exchange functionality in the ledger.

Frii Pay, a crypto payment solution focused on merchants and consumers, shows the use of the XRP Ledger for payment settlement and digital-asset payments.

For wallet and exchange developers, native payment routing and order-book queries provide direct access to ledger-level financial functions.

Which is better for payments?

The right choice follows the product’s financial requirements, execution model and integration environment.

Metric / FeatureXRP Ledger (XRPL)Stellar (XLM)
Primary target marketB2B, institutional, high-value wholesaleP2P, micropayments, retail remittances
Transaction speedAbout 3–5 secondsAbout 5 seconds
Throughput (project-reported)~1,500 TPS~1,000 TPS
Standard payment fee0.00001 XRP (10 drops), burned0.00001 XLM (100 stroops), sent to a fee pool
Smart contract capabilityNon-Turing-complete native primitives (Escrow, Checks, Payment Channels). Hooks run on Xahau, not XRPL MainnetSoroban (Rust-based, Turing-complete WebAssembly engine)
Smart contract feeN/A (logic executes via native transaction objects)Resource-based fees for contract execution
SDK ecosystemTypeScript/JavaScript, Python, Java, C++JavaScript/TypeScript, Python, Go, Rust, Java, C#
Liquidity and routingNative DEX + auto-bridging (XRP as an intermediate currency)Native DEX + path payments (multi-asset hops, atomic)
Fiat on/off rampsInstitutional partners, Ripple Payments (formerly RippleNet and ODL)Native anchor network (for example, MoneyGram cash-to-crypto integration)
Consensus philosophyCuration-based trust (Unique Node Lists)Open-ended web of trust (federated quorum slices)

XRPL

The upside: Stability and immediate security. You do not need expensive smart contract audits because the core logic is hardcoded into the protocol.

The downside: Bounded logic. If your payment workflow requires custom compliance (for example, “only release this payment if the receiver holds a specific KYC token”), you must build and host that validation logic on your own backend rather than on-chain.

Build on XRPL if you are developing:

Stellar

The upside: Architectural freedom. You can deploy custom on-chain compliance workflows, decentralized finance (DeFi) liquidity pools and automated, multi-signature corporate governance systems.

The downside: Complexity. Developers must manage smart contract security audits, code optimization and Stellar’s ledger space rent (stored data eventually expires and is archived unless the application pays ongoing maintenance fees).

Build on Stellar if you are developing:

Builder tools

The available SDKs, test environments, explorers, and infrastructure tooling influence development speed and operational complexity.

Conclusion

A successful payment application depends on more than quick settlement and inexpensive transactions. Account state, asset routing, transaction status, historical data and operational monitoring determine how reliably the application handles real payments.

XRPL provides native financial operations, currency routing, order books, and WebSocket subscriptions. Stellar combines native payment infrastructure with Soroban smart contracts, transaction simulation and an ecosystem focused on stablecoins, remittances and tokenized assets.

The most useful next step is to implement the same representative payment workflow on each Testnet. Measure request latency, settlement time, fee behavior and transaction-history availability. Test interrupted submissions and confirm that the application recovers without initiating duplicate payments.

Chainstack provides the managed RPC access needed to run these tests and move toward production. Explore XRPL RPC infrastructure, Stellar RPC infrastructure and the XRPL and Stellar tooling guides to begin building against the network that fits the payment workflow.

Frequently asked questions

What is the main difference between XRPL and Stellar for payment developers?

XRPL provides native financial operations, including cross-currency payment routing, order books and automated market makers. Stellar combines native payment and asset-transfer capabilities with Soroban smart contracts for programmable financial applications. The right choice depends on the application’s asset flows, execution requirements and integration needs.

How do XRPL and Stellar RPC APIs differ?

XRPL supports JSON-RPC over HTTPS and WebSocket connections over WSS, making it suitable for request-response queries and real-time ledger subscriptions. Stellar RPC uses JSON-RPC 2.0 over HTTPS and provides methods for account and ledger queries, transaction submission, status checks, simulation and event retrieval. These differences affect how applications implement transaction monitoring and data consumption.

How long does a payment take to settle on XRPL and Stellar?

XRPL typically settles transactions in approximately three to five seconds, while Stellar generally closes ledgers in approximately five seconds. Actual application latency depends on network conditions, RPC response times, transaction requirements and the time needed to verify the final transaction result.

How do you verify whether an XRPL or Stellar transaction succeeded?

On XRPL, use the tx method to inspect the transaction and verify that it appears in a validated ledger with a successful result. On Stellar, use getTransaction to retrieve the transaction status and continue polling until it reaches a terminal state such as SUCCESS or FAILED. An RPC submission response alone should not be treated as proof of successful settlement.

How do transaction fees work on XRPL and Stellar?

XRPL fees are denominated in XRP, with one XRP equal to one million drops. The standard reference transaction cost is 10 drops, although network conditions and transaction requirements can increase the required fee. Stellar fees are denominated in XLM and depend on transaction operations and network demand. Soroban transactions also account for computational and resource requirements. Applications should estimate fees before signing and submitting transactions.

Can XRPL and Stellar support cross-currency payments?

Yes. XRPL supports cross-currency payments through native payment routing and available liquidity sources including order books and automated market makers. Stellar supports path payments that convert assets along a route between the source and destination. In both cases, developers should validate the available route, expected amounts, liquidity and execution constraints before submitting a payment.

Why use a managed RPC provider for XRPL or Stellar?

A managed RPC provider gives developers access to blockchain data and transaction submission without requiring them to operate the underlying nodes themselves. Chainstack supports XRPL and Stellar Mainnet and Testnet deployments with options for different infrastructure requirements. Depending on the deployment, developers can use managed endpoints for account queries, transaction monitoring, historical data access and payment integration testing.

Exit mobile version