> For the complete documentation index, see [llms.txt](https://v1.docs.blueberry.garden/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://v1.docs.blueberry.garden/lending-protocol/error-code/btoken-error-code.md).

# bToken Error Code

### Error codes

<table><thead><tr><th width="149">Code</th><th width="335">Name</th><th>Description</th></tr></thead><tbody><tr><td>0</td><td>NO_ERROR</td><td>Not a failure.</td></tr><tr><td>1</td><td>UNAUTHORIZED</td><td>The sender is not authorized to perform this action.</td></tr><tr><td>2</td><td>BAD_INPUT</td><td>An invalid argument was supplied by the caller.</td></tr><tr><td>3</td><td>COMPTROLLER_REJECTION</td><td>The action would violate the comptroller policy.</td></tr><tr><td>4</td><td>COMPTROLLER_CALCULATION_ERROR</td><td>An internal calculation has failed in the comptroller.</td></tr><tr><td>5</td><td>INTEREST_RATE_MODEL_ERROR</td><td>The interest rate model returned an invalid value.</td></tr><tr><td>6</td><td>INVALID_ACCOUNT_PAIR</td><td>The specified combination of accounts is invalid.</td></tr><tr><td>7</td><td>INVALID_CLOSE_AMOUNT_REQUESTED</td><td>The amount to liquidate is invalid.</td></tr><tr><td>8</td><td>INVALID_COLLATERAL_FACTOR</td><td>The collateral factor is invalid.</td></tr><tr><td>9</td><td>MATH_ERROR</td><td>A math calculation error occurred.</td></tr><tr><td>10</td><td>MARKET_NOT_FRESH</td><td>Interest has not been properly accrued.</td></tr><tr><td>11</td><td>MARKET_NOT_LISTED</td><td>The market is not currently listed by its comptroller.</td></tr><tr><td>12</td><td>TOKEN_INSUFFICIENT_ALLOWANCE</td><td>ERC-20 contract must allow Money Market contract to call transferFrom. The current allowance is either 0 or less than the requested supply, repayBorrow or liquidate amount.</td></tr><tr><td>13</td><td>TOKEN_INSUFFICIENT_BALANCE</td><td>Caller does not have sufficient balance in the ERC-20 contract to complete the desired action.</td></tr><tr><td>14</td><td>TOKEN_INSUFFICIENT_CASH</td><td>The market does not have a sufficient cash balance to complete the transaction. You may attempt this transaction again later.</td></tr><tr><td>15</td><td>TOKEN_TRANSFER_IN_FAILED</td><td>Failure in ERC-20 when transfering token into the market.</td></tr><tr><td>16</td><td>TOKEN_TRANSFER_OUT_FAILED</td><td>Failure in ERC-20 when transfering token out of the market.<br></td></tr></tbody></table>

### Failure Information

<table><thead><tr><th width="150">Code</th><th>Name</th></tr></thead><tbody><tr><td>0</td><td>ACCEPT_ADMIN_PENDING_ADMIN_CHECK</td></tr><tr><td>1</td><td>ACCRUE_INTEREST_ACCUMULATED_INTEREST_CALCULATION_FAILED</td></tr><tr><td>2</td><td>ACCRUE_INTEREST_BORROW_RATE_CALCULATION_FAILED</td></tr><tr><td>3</td><td>ACCRUE_INTEREST_NEW_BORROW_INDEX_CALCULATION_FAILED</td></tr><tr><td>4</td><td>ACCRUE_INTEREST_NEW_TOTAL_BORROWS_CALCULATION_FAILED</td></tr><tr><td>5</td><td>ACCRUE_INTEREST_NEW_TOTAL_RESERVES_CALCULATION_FAILED</td></tr><tr><td>6</td><td>ACCRUE_INTEREST_SIMPLE_INTEREST_FACTOR_CALCULATION_FAILED</td></tr><tr><td>7</td><td>BORROW_ACCUMULATED_BALANCE_CALCULATION_FAILED</td></tr><tr><td>8</td><td>BORROW_ACCRUE_INTEREST_FAILED</td></tr><tr><td>9</td><td>BORROW_CASH_NOT_AVAILABLE</td></tr><tr><td>10</td><td>BORROW_FRESHNESS_CHECK</td></tr><tr><td>11</td><td>BORROW_NEW_TOTAL_BALANCE_CALCULATION_FAILED</td></tr><tr><td>12</td><td>BORROW_NEW_ACCOUNT_BORROW_BALANCE_CALCULATION_FAILED</td></tr><tr><td>13</td><td>BORROW_MARKET_NOT_LISTED</td></tr><tr><td>14</td><td>BORROW_COMPTROLLER_REJECTION</td></tr><tr><td>15</td><td>LIQUIDATE_ACCRUE_BORROW_INTEREST_FAILED</td></tr><tr><td>16</td><td>LIQUIDATE_ACCRUE_COLLATERAL_INTEREST_FAILED</td></tr><tr><td>17</td><td>LIQUIDATE_COLLATERAL_FRESHNESS_CHECK</td></tr><tr><td>18</td><td>LIQUIDATE_COMPTROLLER_REJECTION</td></tr><tr><td>19</td><td>LIQUIDATE_COMPTROLLER_CALCULATE_AMOUNT_SEIZE_FAILED</td></tr><tr><td>20</td><td>LIQUIDATE_CLOSE_AMOUNT_IS_UINT_MAX</td></tr><tr><td>21</td><td>LIQUIDATE_CLOSE_AMOUNT_IS_ZERO</td></tr><tr><td>22</td><td>LIQUIDATE_FRESHNESS_CHECK</td></tr><tr><td>23</td><td>LIQUIDATE_LIQUIDATOR_IS_BORROWER</td></tr><tr><td>24</td><td>LIQUIDATE_REPAY_BORROW_FRESH_FAILED</td></tr><tr><td>25</td><td>LIQUIDATE_SEIZE_BALANCE_INCREMENT_FAILED</td></tr><tr><td>26</td><td>LIQUIDATE_SEIZE_BALANCE_DECREMENT_FAILED</td></tr><tr><td>27</td><td>LIQUIDATE_SEIZE_COMPTROLLER_REJECTION</td></tr><tr><td>28</td><td>LIQUIDATE_SEIZE_LIQUIDATOR_IS_BORROWER</td></tr><tr><td>29</td><td>LIQUIDATE_SEIZE_TOO_MUCH</td></tr><tr><td>30</td><td>MINT_ACCRUE_INTEREST_FAILED</td></tr><tr><td>31</td><td>MINT_COMPTROLLER_REJECTION</td></tr><tr><td>32</td><td>MINT_EXCHANGE_CALCULATION_FAILED</td></tr><tr><td>33</td><td>MINT_EXCHANGE_RATE_READ_FAILED</td></tr><tr><td>34</td><td>MINT_FRESHNESS_CHECK</td></tr><tr><td>35</td><td>MINT_NEW_ACCOUNT_BALANCE_CALCULATION_FAILED</td></tr><tr><td>36</td><td>MINT_NEW_TOTAL_SUPPLY_CALCULATION_FAILED</td></tr><tr><td>37</td><td>MINT_TRANSFER_IN_FAILED</td></tr><tr><td>38</td><td>MINT_TRANSFER_IN_NOT_POSSIBLE</td></tr><tr><td>39</td><td>REDEEM_ACCRUE_INTEREST_FAILED</td></tr><tr><td>40</td><td>REDEEM_COMPTROLLER_REJECTION</td></tr><tr><td>41</td><td>REDEEM_EXCHANGE_TOKENS_CALCULATION_FAILED</td></tr><tr><td>42</td><td>REDEEM_EXCHANGE_AMOUNT_CALCULATION_FAILED</td></tr><tr><td>43</td><td>REDEEM_EXCHANGE_RATE_READ_FAILED</td></tr><tr><td>44</td><td>REDEEM_FRESHNESS_CHECK</td></tr><tr><td>45</td><td>REDEEM_NEW_ACCOUNT_BALANCE_CALCULATION_FAILED</td></tr><tr><td>46</td><td>REDEEM_NEW_TOTAL_SUPPLY_CALCULATION_FAILED</td></tr><tr><td>47</td><td>REDEEM_TRANSFER_OUT_NOT_POSSIBLE</td></tr><tr><td>48</td><td>REDUCE_RESERVES_ACCRUE_INTEREST_FAILED</td></tr><tr><td>49</td><td>REDUCE_RESERVES_ADMIN_CHECK</td></tr><tr><td>50</td><td>REDUCE_RESERVES_CASH_NOT_AVAILABLE</td></tr><tr><td>51</td><td>REDUCE_RESERVES_FRESH_CHECK</td></tr><tr><td>52</td><td>REDUCE_RESERVES_VALIDATION</td></tr><tr><td>53</td><td>REPAY_BEHALF_ACCRUE_INTEREST_FAILED</td></tr><tr><td>54</td><td>REPAY_BORROW_ACCRUE_INTEREST_FAILED</td></tr><tr><td>55</td><td>REPAY_BORROW_ACCUMULATED_BALANCE_CALCULATION_FAILED</td></tr><tr><td>56</td><td>REPAY_BORROW_COMPTROLLER_REJECTION</td></tr><tr><td>57</td><td>REPAY_BORROW_FRESHNESS_CHECK</td></tr><tr><td>58</td><td>REPAY_BORROW_NEW_ACCOUNT_BORROW_BALANCE_CALCULATION_FAILED</td></tr><tr><td>59</td><td>REPAY_BORROW_NEW_TOTAL_BALANCE_CALCULATION_FAILED</td></tr><tr><td>60</td><td>REPAY_BORROW_TRANSFER_IN_NOT_POSSIBLE</td></tr><tr><td>61</td><td>SET_COLLATERAL_FACTOR_OWNER_CHECK</td></tr><tr><td>62</td><td>SET_COLLATERAL_FACTOR_VALIDATION</td></tr><tr><td>63</td><td>SET_COMPTROLLER_OWNER_CHECK</td></tr><tr><td>64</td><td>SET_INTEREST_RATE_MODEL_ACCRUE_INTEREST_FAILED</td></tr><tr><td>65</td><td>SET_INTEREST_RATE_MODEL_FRESH_CHECK</td></tr><tr><td>66</td><td>SET_INTEREST_RATE_MODEL_OWNER_CHECK</td></tr><tr><td>67</td><td>SET_MAX_ASSETS_OWNER_CHECK</td></tr><tr><td>68</td><td>SET_ORACLE_MARKET_NOT_LISTED</td></tr><tr><td>69</td><td>SET_PENDING_ADMIN_OWNER_CHECK</td></tr><tr><td>70</td><td>SET_RESERVE_FACTOR_ACCRUE_INTEREST_FAILED</td></tr><tr><td>71</td><td>SET_RESERVE_FACTOR_ADMIN_CHECK</td></tr><tr><td>72</td><td>SET_RESERVE_FACTOR_FRESH_CHECK</td></tr><tr><td>73</td><td>SET_RESERVE_FACTOR_BOUNDS_CHECK</td></tr><tr><td>74</td><td>TRANSFER_COMPTROLLER_REJECTION</td></tr><tr><td>75</td><td>TRANSFER_NOT_ALLOWED</td></tr><tr><td>76</td><td>TRANSFER_NOT_ENOUGH</td></tr><tr><td>77</td><td>TRANSFER_TOO_MUCH</td></tr></tbody></table>
