Skip to Content

Payouts

Sellers are paid in ETH on Base, not in SETH. As your SETH sells you accrue a USD-owed balance (priced at your tier at sale time). Payouts convert that USD to ETH and send it to your payout address.

When you get paid

  • Payouts run in daily batches. Each UTC day is processed once.
  • You’re included once your sold balance reaches the payout minimum — currently 10 SETH sold. Below that, your owed balance simply keeps accruing until the next run that clears the threshold.

How the amount is computed

The Payout contract on Base pays a batch of sellers with batchPay. For each recipient it converts the USD they’re owed to ETH at the Chainlink ETH/USD price at payout time:

ethAmount = usdOwed × 1e18 / ethUsdPrice

Because usdOwed was fixed at sale time, the only thing that varies between selling and being paid is the ETH/USD conversion. Each recipient transfer is isolated and gas-capped, so one failing recipient never blocks the rest of the batch. The contract emits PayoutSucceeded / PayoutFailed per recipient and a BatchPaid summary.

Your payout address

Payouts land at your payout address on Base, which can be different from the Sepolia address you sell from. Set or change it by calling setPayoutAddress on the vault (the app does this for you from the account panel):

function setPayoutAddress(address payoutAddr) external; // emits PayoutAddressChanged

This is event-only — the vault doesn’t store it. The indexer applies the latest PayoutAddressChanged event (by block and log index). If you never set one, payouts default to your selling address.

Track your pending / processing / paid balances and recent payouts at /api/sellers/:address/balance.

Last updated on