Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.meteora.ag/llms.txt

Use this file to discover all available pages before exploring further.

This page lists the Anchor custom errors returned by the dynamic-bonding-curve program.
Anchor custom program errors start at 6000. When a transaction log contains custom program error: 0x1771, convert the hex value to decimal to find the matching code. For example, PoolError::MathOverflow maps to code 6000.

Error Codes

CodeErrorMessageCommon cause
6000MathOverflowMath operation overflowAmounts, prices, or liquidity values exceed supported integer bounds.
6001InvalidFeeInvalid fee setupBase fee, dynamic fee, or fee scheduler parameters are inconsistent.
6002ExceededSlippageExceeded slippage toleranceSwap output is below the minimum output, or exact-out input exceeds the maximum input.
6003ExceedMaxFeeBpsExceeded max fee bpsFee numerator is above the program maximum.
6004InvalidAdminInvalid adminSigner is not an admin for an admin-only instruction.
6005AmountIsZeroAmount is zeroSwap, claim, or migration amount is zero where a positive amount is required.
6006TypeCastFailedType cast errorInteger conversion failed.
6007InvalidActivationTypeInvalid activation typeActivation type is not slot (0) or timestamp (1).
6008InvalidQuoteMintInvalid quote mintQuote mint does not match the config or supported path.
6009InvalidCollectFeeModeInvalid collect fee modeCollect fee mode is not quote token (0) or output token (1).
6010InvalidMigrationFeeOptionInvalid migration fee optionMigration fee option is outside the supported range, or custom option is used with the wrong destination.
6011InvalidInputInvalid inputGeneric parameter validation failure.
6012NotEnoughLiquidityNot enough liquiditySwap or migration needs more liquidity than the curve can provide.
6013PoolIsCompletedPool is completedAttempted a pre-migration action after the curve completed.
6014PoolIsIncompletedPool is incompletedAttempted migration or post-completion action before the threshold was reached.
6015InvalidMigrationOptionInvalid migration optionMigration option is not DAMM v1 (0) or DAMM v2 (1).
6016InvalidTokenDecimalsInvalid token decimalsToken decimals are outside supported bounds.
6017InvalidTokenTypeInvalid token typeToken type is not SPL Token or Token-2022, or is incompatible with the migration.
6018InvalidFeePercentageInvalid fee percentagePartner or creator migration fee split is outside allowed bounds.
6019InvalidQuoteThresholdInvalid quote thresholdMigration quote threshold is zero or invalid.
6020InvalidTokenSupplyInvalid token supplyPre-migration and post-migration supply values are inconsistent.
6021InvalidCurveInvalid curveCurve points are empty, unsorted, out of price range, or have invalid liquidity.
6022NotPermitToDoThisActionNot permit to do this actionSigner is not the expected partner, creator, or authorized actor.
6023InvalidOwnerAccountInvalid owner accountToken account owner does not match expected authority.
6024InvalidConfigAccountInvalid config accountConfig account does not match the pool or instruction.
6025SurplusHasBeenWithdrawSurplus has been withdrawSurplus was already claimed.
6026LeftoverHasBeenWithdrawLeftover has been withdrawLeftover tokens were already claimed.
6027TotalBaseTokenExceedMaxSupplyTotal base token is exceeded max supplyConfig or pool creation would exceed allowed base supply.
6028UnsupportNativeMintToken2022Unsupport native mint token 2022Native mint was used with an unsupported Token-2022 path.
6029InsufficientLiquidityForMigrationInsufficient liquidity for migrationPool does not have enough liquidity to initialize the destination DAMM pool.
6030MissingPoolConfigInRemainingAccountMissing pool config in remaining accountRequired config account was not supplied in remaining accounts.
6031InvalidVestingParametersInvalid vesting parametersVesting schedule is malformed or has invalid totals.
6032InvalidLeftoverAddressInvalid leftover addressLeftover receiver is missing or invalid when fixed supply requires it.
6033InsufficientLiquidityLiquidity in bonding curve is insufficientCurve segment cannot support the requested price movement.
6034InvalidFeeSchedulerInvalid fee schedulerScheduler periods, duration, or reduction factor are invalid.
6035InvalidCreatorTradingFeePercentageInvalid creator trading fee percentageCreator trading fee share is outside allowed bounds.
6036InvalidNewCreatorInvalid new creatorNew creator address is invalid or equals the old creator.
6037InvalidTokenAuthorityOptionInvalid token authority optionToken authority mode is outside supported values.
6038InvalidAccountInvalid account for the instructionAccount does not match expected PDA, mint, vault, or owner.
6039InvalidMigratorFeePercentageInvalid migrator fee percentageMigrator fee setting is outside allowed range.
6040MigrationFeeHasBeenWithdrawMigration fee has been withdrawPartner or creator migration fee was already withdrawn.
6041InvalidBaseFeeModeInvalid base fee modeBase fee mode is not linear scheduler, exponential scheduler, or rate limiter.
6042InvalidFeeRateLimiterInvalid fee rate limiterRate limiter fields are missing or invalid.
6043FailToValidateSingleSwapInstructionFail to validate single swap instruction in rate limiterInstruction sysvar validation failed for a rate limiter swap.
6044InvalidMigratedPoolFeeInvalid migrated pool fee paramsDAMM v2 graduated-pool fee params are invalid.
6045UndeterminedErrorUndertermined errorGeneric fallback error.
6046RateLimiterNotSupportedRate limiter not supportedRate limiter was used in an unsupported context.
6047AmountLeftIsNotZeroAmount left is not zeroExact-in path did not consume the expected amount. Use partial fill near curve completion.
6048NextSqrtPriceIsSmallerThanStartSqrtPriceNext sqrt price is smaller than start sqrt priceSwap movement would cross below the curve start.
6049InvalidMinBaseFeeInvalid min base feeMinimum base fee is below the program requirement.
6050AccountInvariantViolationAccount invariant violationCPI account owner, lamports, or data length changed unexpectedly.
6051InvalidPoolCreationFeeInvalid pool creation feePool creation fee is outside allowed bounds.
6052PoolCreationFeeHasBeenClaimedPool creation fee has been claimedPool creation fee was already claimed.
6053UnauthorizedNot permit to do this actionSigner lacks the required authority.
6054ZeroPoolCreationFeePool creation fee is zeroAttempted to claim a zero pool creation fee.
6055InvalidMigrationLockedLiquidityInvalid migration locked liquidityLiquidity distribution does not satisfy locked-liquidity requirements.
6056InvalidFeeMarketCapSchedulerInvalid fee market cap schedulerDAMM v2 market-cap fee scheduler params are invalid.
6057FirstSwapValidationFailedFail to validate first swap with minimum feeFirst-swap-with-min-fee transaction context failed validation.
6058IncorrectATAIncorrect ATAAssociated token account does not match expected owner or mint.
6059InsufficientPoolLamportsPool has insufficient lamports to perform the operationPool account cannot pay required lamports for the operation.
6060InvalidPermissionInvalid permissionOperator permission bits are invalid.
6061InvalidWithdrawProtocolFeeZapAccountsInvalid withdraw protocol fee zap accountsProtocol zap account list is malformed.
6062MintRestrictedFromZapSOL,USDC protocol fee cannot be withdrawn via zapRestricted mint was used with zap.
6063InvalidZapOutParametersInvalid zap out parametersZap output parameters are invalid.
6064CpiDisabledCPI disabledProtocol zap CPI is disabled by the downstream zap program.
6065MissingZapOutInstructionMissing zap out instructionRequired zap instruction was not found.
6066InvalidZapAccountsInvalid zap accountsZap accounts do not match the expected route.
6067InvalidCompoundingParametersInvalid compounding parametersDAMM v2 compounding fee settings are invalid.

TypeScript SDK Validation Helpers

The TypeScript SDK performs many checks before building transactions. These helpers return booleans or throw SDK-side errors before the program returns a custom error.
HelperRelated program errors
validateConfigParametersInvalidFee, InvalidCollectFeeMode, InvalidMigrationOption, InvalidTokenDecimals, InvalidCurve, InvalidPoolCreationFee.
validateFeeSchedulerInvalidFeeScheduler, InvalidMinBaseFee, ExceedMaxFeeBps.
validateFeeRateLimiterInvalidFeeRateLimiter, RateLimiterNotSupported.
validateDynamicFeeInvalidInput, MathOverflow.
validateMigrationFeeOptionInvalidMigrationFeeOption, InvalidMigratedPoolFee.
validateMigratedPoolFeeInvalidMigratedPoolFee, InvalidFeeMarketCapScheduler, InvalidCompoundingParameters.
validateLiquidityVestingInfoInvalidVestingParameters, InvalidMigrationLockedLiquidity.
validateTokenSupplyInvalidTokenSupply, InvalidLeftoverAddress, TotalBaseTokenExceedMaxSupply.
validateBaseTokenTypeInvalidTokenType, UnsupportNativeMintToken2022.
validateSwapAmountAmountIsZero.