Skip to main content
There are a number of ways to generate errors in contracts. One way is error enum types, that are defined by contracts and that map errors to unsigned 32-bit integer values. They are usable as error values in the return types of contract functions.
The errors example demonstrates how to define your own error types.

Error Enums

Errors are a special type of enum integer type that are stored on ledger as Error values containing a u32 code.
When converted to XDR, the value becomes an ScVal, containing a ScError, containing the integer value of the error as contract error.