20 major breaking releases

new 20.0.0 Dec 18, 2025
19.0.0 Dec 7, 2025
18.0.0 Oct 2, 2025
17.0.0 Aug 1, 2025
0.0.0 Nov 14, 2023

#7 in #skip

Download history 8662/week @ 2025-08-27 2335/week @ 2025-09-03 2637/week @ 2025-09-10 2905/week @ 2025-09-17 1970/week @ 2025-09-24 2294/week @ 2025-10-01 2321/week @ 2025-10-08 2099/week @ 2025-10-15 2292/week @ 2025-10-22 1528/week @ 2025-10-29 1621/week @ 2025-11-05 2118/week @ 2025-11-12 1693/week @ 2025-11-19 1434/week @ 2025-11-26 1954/week @ 2025-12-03 1616/week @ 2025-12-10

7,063 downloads per month
Used in 41 crates (via polkadot-sdk)

GPL-3.0-only

2.5MB
42K SLoC

Skip Feeless Payment Pallet

This pallet allows runtimes that include it to skip payment of transaction fees for dispatchables marked by #[pallet::feeless_if].

Overview

It does this by wrapping an existing TransactionExtension implementation (e.g. pallet-transaction-payment) and checking if the dispatchable is feeless before applying the wrapped extension. If the dispatchable is indeed feeless, the extension is skipped and a custom event is emitted instead. Otherwise, the extension is applied as usual.

Integration

This pallet wraps an existing transaction payment pallet. This means you should both pallets in your construct_runtime macro and include this pallet's TransactionExtension (SkipCheckIfFeeless) that would accept the existing one as an argument.

Dependencies

~29–49MB
~696K SLoC