| name | cartridge-paymaster |
| description | Set up and manage Cartridge paymasters to sponsor transaction fees for gasless user experiences. |
Cartridge Paymaster
Manage paymasters that sponsor transaction fees, enabling gasless experiences for users.
Zero integration required — when enabled, eligible transactions are automatically sponsored.
Availability
- Testnet: Automatically enabled, no setup required
- Mainnet: Self-served via the CLI
Creating a Paymaster
Requires an authenticated session (slot auth login) and a team with credits.
slot paymaster <name> create --team <team> --budget <amount> --unit CREDIT
The budget is deducted from the team's credit balance.
1 CREDIT = $0.01 USD.
Budget Management
slot paymaster <name> budget increase --amount <amount> --unit CREDIT
slot paymaster <name> budget decrease --amount <amount> --unit CREDIT
Policy Management
Policies define which contracts and entrypoints the paymaster will sponsor.
Add from preset (recommended)
Use verified contract presets from the Dojo ecosystem:
slot paymaster <name> policy add-from-preset --name <preset-name>
Presets are maintained at https://github.com/cartridge-gg/presets/tree/main/configs
Add a single policy
slot paymaster <name> policy add --contract <address> --entrypoint <entry-point>
Add from JSON
slot paymaster <name> policy add-from-json --file <path>
JSON format:
[
{
"contractAddress": "0x1234...abcd",
"entrypoint": "move_player"
},
{
"contractAddress": "0x5678...efgh",
"entrypoint": "attack",
"predicate": {
"address": "0x9abc...1234",
"entrypoint": "check_attack_eligibility"
}
}
]
Predicates are optional.
When present, the predicate contract is called first — the transaction is only sponsored if it returns true.
Remove policies
slot paymaster <name> policy remove --contract <address> --entrypoint <entry-point>
slot paymaster <name> policy remove-all
slot paymaster <name> policy list
Info and Configuration
slot paymaster <name> info
slot paymaster <name> update --name <new-name>
slot paymaster <name> update --team <new-team>
slot paymaster <name> update --active false
slot paymaster <name> update --active true
Monitoring
Stats
slot paymaster <name> stats --last <period>
Period options: 1hr, 2hr, 24hr, 1day, 2day, 7day, 1week.
Transaction history
slot paymaster <name> transactions [OPTIONS]
Options:
--filter SUCCESS|REVERTED|ALL
--last <period>
--order-by FEES_ASC|FEES_DESC|EXECUTED_AT_DESC|EXECUTED_AT_ASC
--limit <n> (max 1000)
Dune Analytics
Generate SQL queries for Dune dashboards:
slot paymaster <name> dune --last 24hr
slot paymaster <name> dune --dune-params
Common Workflow: New Game Setup
slot paymaster my-game-pm create --team my-team --budget 1000 --unit CREDIT
slot paymaster my-game-pm policy add --contract 0x123...abc --entrypoint move_player
slot paymaster my-game-pm policy add --contract 0x123...abc --entrypoint attack_enemy
slot paymaster my-game-pm info