CurtainMarketsDocs
curtain/docs/errorsLaunch app

Errors

Every error the program can return, what it means and what to do.

ErrorMeaningWhat to do
UnauthorizedOnly the authority may do thisNothing; this is an operator action
InvalidParameterA parameter is outside its allowed rangeCheck the ceilings on the API page
PausedNew bets and new markets are pausedWait; settlement, claims and withdrawals still work
MathOverflowAn amount overflowedUse a smaller amount
AbortedComputationThe cluster aborted the computationRetry; a deposit with amount 0 retries an aborted credit
StaleCallbackA callback answered a computation the account is not waiting forNothing; it is ignored
PurseBusyYour purse is waiting on another computationWait a few seconds, or release it after an hour
NothingToReleaseThe purse is not waiting on anythingNothing to do
NotStuckYetThe computation has not been outstanding for an hourWait until it has
PurseEmptyThe purse has never been fundedDeposit first
ZeroAmountAmount must be greater than zeroEnter an amount
WrongTokenAccountA token account is not the expected oneUse your own USDC account
BettingClosedBetting on this market has closedPick another market
AlreadyInBatchYour purse already holds a ticket in the open batchWait for this batch to close; one ticket per bettor per batch
BatchFullEvery seat of the open batch is takenRetry after the next tally
BatchNotReadyThe previous batch has not been tallied yetRetry shortly
TallyNotDueThe batch cannot be tallied yetWait for the minimum bettors and the end of the epoch
TallyInFlightA tally for this market is already with the clusterWait for its callback
BetsInFlightBets of this market are still with the clusterWait for their callbacks
FinalBatchUntalliedThe final batch reached the minimum and must be tallied firstRun tally, then settle
BeforeExpiryThe market deadline has not passedWait for the deadline
AlreadySettledThe market is already settledClaim instead
NotSettledThe market is not settled yetSettle it first
NotPythUpdateNot a verified Pyth price updatePost the update through the Pyth Solana Receiver
FeedMismatchThe price update is for another feedUse the market's own feed
NotFirstPrintNot the first print at or after the deadline, or published past the settling windowPost the first push at or after the deadline; a print published more than 15 seconds after it is refused unless its own previous print is before the deadline
GraceNotOverThe 7-day grace for settling has not endedSettle with the first print instead
AlreadyClaimedThis position was already claimedCheck your purse balance
NothingToSweepNo fees to sweepNothing to do
NotPendingAuthorityNo pending authority, or the signer is not itPropose first

Refused bets

A bet the cluster refuses is not an error: the transaction lands, BetSettled.accepted is false, and nothing moved. It happens when the stake is below the market's minimum ticket or above your sealed balance.

Next: FAQ