Coin Brief ENDE

XLS-87 rewrite would let MPT issuers pre-approve holders and block accounts before they opt in

A pull request opened on 13 October 2026 in the XRPL-Standards repository proposes a narrower first version of XLS-87, the token pre-authorisation draft. Updated on 14 October, it is still open and the specification remains a Draft; the listed authors are from Ripple.

The problem it describes. Today, issuers of a Multi-Purpose Token (MPT) that requires authorisation must sign a separate transaction for every holder they approve — impractical at scale and awkward for issuers who keep their keys in cold storage. Issuers of permissionless MPTs face the reverse: anyone can opt in and receive the token immediately, and the existing tools — per-holder lock, global lock and clawback — act only on a holding that already exists. A party the issuer must not serve can therefore receive funds before the issuer reacts; the draft names sanctions regimes as the case in point.

XLS-87 rewrite would let MPT issuers pre-approve holders and block accounts before they opt in
XLS-87 rewrite would let MPT issuers pre-approve holders and block accounts before they opt in — Coin Brief

Two new ledger entries. Modelled on DepositPreauth, each is owned by the issuer, keyed by holder and MPTokenIssuanceID, and managed by a transaction of the same name:

  • TokenPreauth marks a holder as pre-authorised, so on a RequireAuth issuance the holder's own MPTokenAuthorize is accepted without a second issuer transaction.
  • TokenBlock stops an account from getting a holding of that token by any route — MPTokenAuthorize, or the paths that create a holding implicitly: payments, the DEX, Checks, Escrow, AMM and Vault. If the account already holds the token, its authorisation is revoked, but the balance is not frozen; that still needs a separate Lock. A new result code, tecTOKEN_BLOCKED, signals the failure.

Scope limits. A block applies to one issuance only and is never issuer-wide; a blocked account can still use XRP and every other token. A holder can never be pre-authorised and blocked for the same issuance at once. IOU support, pre-authorisation by credential (XLS-70) or domain (XLS-80) and blocking for Deposit Authorization are left to later amendments. The feature would need an amendment, tentatively named TokenPreauth.

Source: XRPL-Standards, pull request #660 "XLS-87: Revise Token Pre-Authorization as MPT-only TokenPreauth and TokenBlock" — https://github.com/XRPLF/XRPL-Standards/pull/660