XRP Ledger (XRPL) validators have put BatchV1_1 on a conditional path to activate at 14:06:41 UTC on Sept. 29, turning a security near-miss into a live test of the network's amendment process and its surrounding software.
On Sept. 22, xrpldashboard showed 30 of 35 trusted validators supporting the amendment, above its displayed 28-vote threshold. The majority first appeared on-ledger on Sept. 15.
Under XRPL's amendment rules, support must remain above 80% for two weeks. A fall to 80% or less ends the majority period, so the activation date remains conditional.
Sept. 29 is the first production test of whether XRPL's validator process, reference implementation, and client ecosystem converted a dangerous pre-mainnet flaw into usable atomic transaction infrastructure.
The validator firewall worked before mainnet
The original Batch amendment never activated on the XRP Ledger mainnet. In February, researchers found a critical authorization flaw while the amendment was still in its voting phase, and validators were advised to vote it down.
XRPL Labs' official vulnerability disclosure states that no funds were at risk.
The flaw sat in the loop that checked the accounts authorizing a batch. If the code encountered a signer for a newly created account whose key matched that account, it returned success immediately instead of continuing through the remaining signers.
An attacker could place that valid signer first, then add a forged entry purporting to authorize a victim account. If the amendment had gone live, the unchecked victim transaction could have executed without the victim's keys.
XRPL's response came in two stages. Version 3.1.1 marked the original Batch and fixBatchInnerSigs amendments unsupported, blocking their activation. BatchV1_1 later replaced them with a rewritten authorization path and additional defenses.
The episode was a failure caught at the boundary between software release and protocol activation.
The XRPL Foundation's final XLS-56 specification now requires a multi-account batch to contain the exact, complete set of BatchSigners whose authorization the inner transactions would ordinarily need, apart from the account whose normal signature authorizes the outer transaction.
Missing, extra, duplicate, or incorrectly ordered entries cause rejection.
Each BatchSigner also signs more than a loose collection of inner transactions. The payload binds the signature to the outer account, its sequence number or ticket, the selected batch mode, the ordered hashes of every inner transaction, and the BatchSigner account.
A multi-signed entry also binds each nested signer account. That prevents a valid signature from being lifted into a different outer transaction or reassigned to another participant.
The merged reference implementation adds enforcement around that design, including signer ordering and uniqueness checks, transaction-count bounds, rejection of directly submitted inner transactions, and protections for ledger replay.
Together, those changes address both the disclosed premature-success bug and adjacent ways that malformed or replayed batch data could cross authorization boundaries.
A Batch contains two to eight inner transactions. Each inner transaction carries no signature or fee and is marked so it cannot be submitted independently. The outer Batch selects exactly one of four modes:
- ALLORNOTHING: every inner transaction must succeed or none of their state changes commit.
- ONLYONE: the first successful inner transaction is the only one applied.
- UNTILFAILURE: transactions apply in order until one fails.
- INDEPENDENT: every inner transaction is attempted regardless of the others' results.
BatchV1_1 can support atomic all-or-nothing flows, but not every batch is atomic in that narrow sense. Developers can also use it for ordered fallbacks or independent bundles.
Activation shifts risk to implementation
The most immediate integration trap is that an outer Batch can return tesSUCCESS even when one or more inner transactions fail. Clients must inspect each inner transaction's metadata and result code to determine what happened.
That distinction is important outside ALLORNOTHING mode, where partial or independent execution is intentional.
BatchV1_1 support shipped in xrpld 3.3.0 on Aug. 6. Once the amendment activates, a server that does not understand the new rules becomes amendment-blocked. It can no longer reliably validate the ledger or participate in consensus until it upgrades.
An issue filed against xrpl.js documented that version 5.0.0 built Batch signatures using the older payload, omitting the outer account, sequence, and participant binding. BatchV1_1-enabled nodes rejected those signatures with temBAD_SIGNATURE.
The xrpl.js release history records compatible support in version 5.1.0.
| xrpld | BatchV1_1 support shipped in 3.3.0 | An incompatible server can become amendment-blocked after activation |
| xrpl.js | Version 5.1.0 added the revised signing format | Version 5.0.0 can produce signatures rejected by BatchV1_1 nodes |
| Wallets | Display every inner action and the selected mode | A user may approve a bundle without understanding its full effect |
| Explorers and indexers | Preserve the relationship between outer and inner transactions | Interfaces can misreport or fragment the outcome of a batch |
XRPL’s repaired BatchV1_1 amendment nears a conditional activation test after validators rejected an earlier signer-loop design.The wallet and indexer rows reflect integration guidance in the detailed XLS-56 rules. The protocol can reject a malformed signature, but it cannot force a wallet to explain a complex bundle clearly or an explorer to present every inner result in context.
The specification also flags front-running as an area still under investigation. Stronger authorization prevents a party from forging another account's approval, but it does not eliminate every risk created by packaging several market-facing actions into one ordered submission.
What Sept. 29 will prove
If the majority holds, activation will show that XRPL's validator process can stop a dangerous amendment, route operators to a disabled release and later move a repaired replacement through the same governance machinery.
It will also begin a real-world test of whether servers, signing libraries, wallets and data infrastructure agree on the new transaction format and its results.
It will not prove that applications have adopted BatchV1_1, that users want the feature, or that network transaction demand will increase. The amendment vote and software releases establish protocol availability, but they don't provide evidence of additional XRP buying.
The useful signals will come after activation: whether outdated nodes become blocked, whether signing failures cluster around old client versions, whether wallets present multi-account batches intelligibly, and whether explorers report inner outcomes without mistaking outer success for complete execution.
XRPL's validators passed the first test by preventing the original Batch flaw from reaching mainnet. The conditional Sept. 29 activation asks whether the ecosystem learned enough from that near miss to operate the replacement safely.


















































