The Vault
๐Ÿค Delegation

๐Ÿ“ฆ Stake-as-a-Service (SaaS)

Compare main-bucket and Community Pool invoice rates, settlement tokens, payment methods and unpaid-invoice limits.

View as Markdown

The Vault uses Stake-as-a-Service (SaaS) invoices for its Direct Stake Leaders, Elite Performance and Community Pool allocations. The fee rate and unpaid-invoice limit depend on which allocation generated the invoice. Direct stake is not charged these allocation fees.

Banner: Two collaborators connect a customizable orange-and-cream vault module to a tidy network of server towers, beside blank modular token discs.

Key Principles

  • Sustainability: Introduces a fee structure to maintain and grow our operations.
  • Fairness: Equal access to stake for approved validators, contingent on consistent subscription payments.
  • Transparency: Invoices and payment statuses are tracked through our dApp.
  • Simplicity: Fixed-rate system, with a payment bot that pays your invoices automatically.

Payment Terms

The two invoice categories have different terms:

AllocationFee on its earningsUnpaid-invoice limit
Direct Stake Leaders and Elite Performance25%, subject to the main-bucket exemptions.Temporary transition allowance of 20 unpaid invoices.
Community Pool75%, funding rewards for pool delegators; the validator retains 25%.Three unpaid invoices; pay within three Solana epochs to retain pool stake.

Main-bucket invoices are issued one epoch after stake is received. Review each invoice's source and settlement token. Current invoicers can use vSOL or VLP; the new Community Pool contract accepts VLP only. The website and official bot support SOL funding for the required token.

Validator Board members' main-bucket exemption does not waive Community Pool fees. The temporary 20-invoice allowance gives main-bucket validators time to switch payment systems; it is not a permanent term or a Community Pool grace period.

The 25% main-bucket rate is calculated using the following formula: [((avg_mev_per_block ร— validator mev commission) + avg_rewards_per_block) ร— (stake by the vault รท avg_stake_per_leader_slot) + (stake by the vault ร— (chain inflation rate รท epochs per year) ร— validator inflation commission)] ร— 0.25 (Figure 7.17).

The SaaS rate scales average MEV per block times validator MEV commission plus average rewards per block by The Vault's stake divided by average stake per leader slot, adds The Vault's stake times chain inflation rate divided by epochs per year times validator inflation commission, then multiplies the total by 0.25.

Figure 7.17: How the SaaS rate is calculated

Enforcement

At the temporary 20-unpaid-invoice main-bucket limit, the stakebot blocks Direct Stake Leaders and Elite Performance delegation until overdue invoices are settled. The validator remains on the approved list. Community Pool stake instead keeps the three-unpaid-invoice cap: the stakebot automatically blocks late pool validators and reallocates that pool stake to paying eligible validators (Figure 7.18).

Community Pool stake has a three-unpaid-invoice cap; the temporary 20-invoice allowance applies only to Direct Stake Leaders and Elite Performance.

Figure 7.18: Separate invoice limits

Settle overdue invoices and check eligibility and subsequent allocation updates. Payment confirmation does not mean previously removed stake has already activated again.

Pay Your Fees Automatically

The Vault's SaaS payment bot checks for invoices once a day in your own GitHub Actions fork. It pays invoices from its trusted Vault invoicer list using each invoice's settlement token, currently vSOL or VLP. When needed, it uses SOL from the payer wallet to obtain that token. The payer wallet does not need to be connected to your validator. Update an existing fork or deployment for the Community Pool invoicer and VLP; custom bots must add the same support. The current bot confirms its funding transaction before submitting the separate invoice payment. Check settlement, not only funding success.

Fork the Repository

Sign in to GitHub and fork SolanaVault/saas-payment-bot to your account.

Add the Secrets

In your fork, open Settings, then Secrets and variables, then Actions, and add three repository secrets: RPC_URL with your RPC URL, PRIVATE_KEY with the payer wallet's private key in the [1,2,3,...] format, and VOTE_KEY with your validator's vote account public key.

Enable the Workflow

Open the Actions tab of your fork and enable workflows. GitHub turns them off in new forks until you do.

Keep the Payer Wallet Funded

Keep enough SOL in the payer wallet for invoice funding and transaction fees. Check Actions logs and your outstanding invoices: insufficient funds, RPC errors or configured run limits can leave invoices unpaid. See the repository README for current limits and configuration.

The bot needs the payer wallet's private key. Use a separate wallet that holds only the SOL for your invoices, never a wallet with your validator keys or other funds.

GitHub can pause scheduled workflows in a repository with no activity for 60 days. Check the Actions tab now and then, and push a commit at least every 60 days to keep the bot running. You can also run the bot in your own environment instead of GitHub Actions; the repository's README explains how.

Pay Your Fees Manually

You can also pay your invoices yourself on the validator dashboard.

Select Your Validator

Find your validator in the list and click on it.

Find Your Outstanding Fees

Find any outstanding epoch fees on your dashboard.

Connect Your Wallet

Connect your wallet to the site.

Pay the Fees

Click the Pay button. It shows how many invoices it pays, for example Pay 3 invoices.

Sign the Transaction

Sign the transaction using your wallet.

Check each invoice's settlement token and the payment quote before approving. The current payment system supports vSOL and VLP invoices, with SOL funding through the supported payment flow. For the new pool invoice flow and the three-epoch payment window, see Pay Community Pool invoices.

FAQ

What If I Don't Pay on Time?

Community Pool stake has a three-unpaid-invoice cap. The main Direct Stake Leaders and Elite Performance buckets have a separate temporary 20-invoice allowance. Late Community Pool stake is automatically reallocated to paying eligible validators. See Enforcement.

Can I Pay My Invoices Automatically?

Yes. Set up the SaaS payment bot: it checks for outstanding invoices once a day and pays them from a payer wallet you choose. See Pay your fees automatically.

Can an Invoice Be Paid Twice by Mistake?

An already-settled invoice cannot be paid again. Funding and payment are separate transactions, so a funding transaction can still leave vSOL or VLP in your payer wallet if payment is deferred or the invoice is settled by another run.

Why Do Some Validators Have No Stake-as-a-Service Invoices?

Main-bucket invoices apply to Direct Stake Leaders and Elite Performance allocations, with the Validator Board exemption for those buckets. Direct stake and manual gauge allocations outside the Community Pool are not charged the main-bucket fee. Community Pool allocations have their own 75% fee, so gauge stake must not be described as universally fee-free.

Can I Track How Much I Owe?

Yes. Validators can view current and past invoices on the dApp.

Is This System Permanent?

This is a pilot structure. The Vault may adapt the pricing or model based on validator feedback and protocol needs.

On this page